many serious game streamers use a second
PC actually so they got one for gaming
and then another one dedicated to
encoding and interacting with their
audience so we were brainstorming and
talking about some cool projects that
we've done in the past with unread and
virtualization technology and well let's
just say the old light bulb went off
what if we could build using an Intel
high core count core I nine processor a
two-in-one solution splitting a single
Tower with a single motherboard
effectively in half to perform both of
those duties virtually of course would
we end up with a viable day-to-day
streaming solution well thanks to Intel
sponsorship of this investigation we are
about to find out
okay so let's start with this why would
anyone want to run a virtualized
two-in-one setup as opposed to just
having two separate machines I mean bare
metals more efficient right let's take a
look at a few reasons why it might
actually be a cool idea first and most
importantly for many is cost unless you
already have a second computer to
dedicate to encoding you would still
have to buy GPU RAM and storage for two
but you could save the considerable
expense of many other components in
addition your total power consumption
and heat output will be a touch lower
than running separate PCs meaning your
energy bill will be lower - the second
reason to go virtual is space while it's
not a concern for some if you're
streaming from a college dorm or a small
apartment this means one less tower
taking up space in your gaming area not
every virtualized - and one has to be
this big reason number three versatility
since the gaming and streaming setups
are virtualized not only are any
potential software issues confined to
each VM but they can also be much more
quickly and easily backed up or cloned
once you're set up so in the future you
can easily hit the reset button in case
anything should go wrong also thanks to
the magic of on raid your gaming /
streaming machine can act as a file and
media server for the rest of your
household so the plan then is to use a
portion of our CPU to encode our video
stream using x264 with high quality
settings that way we can avoid the
potential for scheduler conflicts
without manually assigning CPU
affinities and task manager like we
would if we were doing both tasks on one
OS well okay Linus this all sounds great
but there's got to be disadvantages
right well there is the fact that when
using virtualization some devices can't
be easily allocated to a VM our onboard
audio for example shares an eye
a new group with the chipset and
essentially cannot be used same story
with USB ports each grouping of ports
has to be on a dedicated controller in
order to pass it through so that you can
hot plug your devices something that we
pretty much take for granted these days
and finally while it's possible to run
on raid without its own video card it's
a royal pain so we grabbed a dedicated
sound card for our gaming VM and extra
USB controller we're using one of the
onboard ones for the other VM and an el
cheapo third graphics card for under 8
so we are ready to you oh wait so during
our testing we found that gaming
performance was actually best when we
assigned four cores and eight threads to
our gaming VM and in some configurations
we actually found tests that performed
better in a virtualized environment
compared to an equivalent configuration
running on bare metal Y so this is the
kind of thing that we encounter
sometimes when we're running on the
bleeding edge we spoke with on raids
developers about the issue and they're
putting together some information to
share with the Red Hat and KVM
hypervisor folks so that hopefully we'll
see a resolution by the time game's
demand more cores for optimal
performance but for the time being our
classic four core eight thread setup
manages a negligible performance hit
compared to bare metal and our streaming
VM can suck up those extra cores anyway
so that it could be used for heavier
video editing and faster encoding for
those edited videos that can later be
uploaded to YouTube or other video
on-demand sites alright then so let's
show off the rest of the setup we're
using the utterly unique level one text
DisplayPort 1.2 KVM from Wendell and his
team this gives us support for high
refresh rate monitors like a Seuss's 240
hertz rog swift PG 2 v 8 q and easy
switching between our VMs
saving us from using two keyboards and
mice though it should be noted that
having an extra one on hand is pretty
useful in some cases we're using
Corsairs
massive obsidian 900 D tower thanks to
its ample cooling capacity and we're
powering all three of our GPUs the 1080
Ti for gaming the 1050 Ti for streaming
and that basic one for unrated off of an
ax 1200 eye power supply and we've
thrown in a monstrous on raid array of
712 terabyte Seagate iron wolf pro
drives for 60 terabytes of protected
storage that's visible to both VMs
not to mention as I said before anyone
else on the network who needs it
allowing us to record our streams
basically indefinitely so we can make
them epic frag vids after we're done
streaming finally for our capture Carlo
and other surprise no capture card so we
actually originally had planned to use
one that 4k one from El Gato
but this ended up being way cooler so
our gaming VM is actually transmitting
its video and audio feed to the encoder
VM using the low impact OBS NDI plugin
which runs with very little quality loss
over our virtualized 10 gigabit network
connection between our VMs then from
there we've set the streaming machines
output settings to Twitch's ultimate
1080p 60fps quality setting and would
you look at that
after a few command-line tweaks we could
not only encode on the fly but do so at
x264 s-slow preset which is 6 notches up
from the default potato quality
ultra-fast and to validate our original
hypothesis is there some benefit from
separating them in VMs we pushed our 11
hyper threaded cores to their limit in
the streaming vm to the point where we
forced our encoded video to start
dropping frames then we went back to the
gaming vm to see if those resources were
effectively being isolated and it was
still running games like nobody's
business
so what have we learned then on this
journey well for one a virtualized dual
head system with all of its shortcomings
has some advantages operating our two
virtual machines was about as
transparent as running two completely
independent systems whether via KVM
switch or with two full sets of
peripherals this is a use case for many
course systems that we've been excited
about for years now and one that has
many applications beyond game streaming
that is just gonna get better in time
and second is that with superior codecs
such as x265 on the horizon that are
better optimized not only for image
quality but for better thread and memory
utilization that happens to mesh great
with core I nines new cache design
you'll be able to push the quality even
higher with a setup like this all we
need to do then is wait for twitch and
mainstream broadcasting software to
support it in the meantime though we've
still built one of the coolest x264
streaming setups out there so thanks to
everyone for their help with this and
especially Intel for sponsoring this
sick experiment and also you guys for
watching it so if you guys dislike this
video you can hit that button but if you
liked it hit like yet subscribe maybe
consider checking out where to buy the
stuff we featured at the link in the
video description maybe a shiny new core
I 9 also link down there is our merch
storage has cool shirts like this one
and our community forum which you should
totally join
We are a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for us to earn fees by linking to Amazon.com and affiliated sites.