Some of you, like me, are probably hardware fanatics. There is a special appeal to you of having a tower sitting on a desk or a server on a rack. However, hardware can be expensive, and with prices sitting at less than a few dollars per hour for cloud-based workstations that are as powerful as computers costing over $5K! It seems too good to be true, until you realize that these instances come with all kinds of little extra fees here and there until it suddenly doesn't seem so cheap when you get the monthly bill.
That all-access connectivity? Well, if you know what to do you can get that for free, all you need is a little bit of advanced knowledge of networking and your choice OS, and you can host your own VPN using OpenVPN and a free DNS from a service such as duckdns.org. You can run this on your server or you can use basically any PC (ideally with an Ethernet port) to be your VPN server, and once this is running, you can remotely access the local networks of anything on the VPN by using the devices as jump servers, something incredibly powerful, in addition to directly connecting to the VPN's connected devices. Alternatively, if you have a router that supports it, you can have your router host the VPN. Once the server is running, OpenVPN provides useful instructions to get your clients up and running. Next, you'll need some hardware, and for this, you'll want a GPU with more than 6GB of memory, a CPU with eight to twelve cores, and at bare minimum 8GB of system RAM (at least as much as your GPU has). You don't have to boot from an SSD, but those are always nice. What matters more though, is storage volume. You don't want to run out of storage volume for datasets. This isn't a huge deal though, as 1TB+ can cost as little as $30. You also want at least a 750W 80+ Bronze power supply, as you want to be able to comfortably install a high-end GPU, or two GPUs of lesser power draw. 1000W or above would be best, but as long as you have sufficient power to run your GPUs with about 20% extra power (for safety) then you should be fine. You should choose a motherboard with at least 2 PCIe slots, possibly more, and your case should have good enough cooling to keep however many GPUs you plan on running cool. This is the precise reason I like full tower cases, they have plenty of ventilation thanks to their large fans and high volume. For reference, Firebolt, my trusty rig, packs an Nvidia 2080 Super, an AMD Ryzen 7 3800X, 32GB of DDR4-3266 CL16, a 2TB HDD booting Ubuntu 20.04 LTS, and a 750W EVGA SuperNova 80+ Gold PSU, all inside a Corsair 760T full tower with 3 140mm fans. Ah, GPUs, these are the most important part of your build. Nvidia GPUs are your best option, as they support CUDA and recent models have Tensor cores to accelerate half-precision computation. AMD GPUs are an option, but their compute libraries are not as efficient as CUDA. The Radeon VII is likely your best AMD option, but Polaris GPUs, Vega GPUs, and GCN GPUs are also good if they have enough memory. You likely want to avoid RDNA GPUs because they don't support ROCm, AMD's open source project for accelerated compute. ROCm comes with lots of libraries for accelerated compute and supports Nvidia GPUs as well as many AMD GPUs. There are alternatives, such as PlaidML and DirectML, but stepping back, it is really much easier to just buy an Nvidia GPU. Titan GPUs or xx90 GPUs (Titan RTX, RTX 3090) are usually excellent choices, but unless you are running massive models, a cheaper xx80 or xx80 ti (RTX 2080, RTX 2080 ti, RTX 3080) GPU is an excellent choice as they are usually less than half the cost, nearly as fast, and only really sacrifice VRAM capacity. A bonus of their cheaper price is you can upgrade twice as often for about the same total cost, if not less. Once you have your build and your VPN ready, you can connect both the rig and your laptop to the VPN. Now, after configuring an SSH server on the rig, you will be able to access it from anywhere you can connect to the VPN. There you have it! You now have a high level knowledge on how you could get your own compute resource up an running, freeing you from cloud providers' contraints.
0 Comments
That's right, for less than $200 you can get a great robot vacuum. Usually you think of expensive Roombas when you think of robot vacuums, but the GOOVI D380 costs less than the $249 lowest-end iRobot Roomba 614 and sucks twice as hard. This little robot doesn't seem to use any smart mapping or artificial intelligence to optimize cleaning routes, and instead just bumbles around until it reaches low battery, at which point it tries to get back to its charging station. Another selling point over iRobot's 614 is the GOOVI D380 has two side brushes, instead of just one, so that it can clean corners and floor molding regardless of which side of the vacuum makes contact with the wall.
While it doesn't come with barrier strips, the D380 can avoid falling down ledges thanks to its sensors. Did I mention the GOOVI is almost an entire inch slimmer than most of iRobot's Roombas, including the 614? That means that it can fit under classically-styled low-slung couches and the like, cleaning areas most vacuums could only dream of. The GOOVI runs for a maximum of 120 minutes, compared to the 614's 90. Both feature the ability to boost cleaning power when they detect they are running on carpet. The GOOVI's 120 minute battery life is only true for 'auto', 'edge', and 'spot' modes, although when running in 'max', battery life halves to a still respectable 60 minutes. So, if we get this straight, we have a vacuum that costs $50 less than the cheapest Roomba, sucks harder, and has better battery life, all while being smaller than the competition? Yes! We do have such a wonderful little vacuum! Wonderful as it may be, it does have a few minor weaknesses, which are likely a symptom of the price. Most prominently, the GOOVI D380 can't be controlled from a phone or adapt to your space, so you have to be home and somewhat close to it in order to control or start it with the included remote, although this isn't that bad since vacuums need to be checked on or cleaned from time to time. Overall, the GOOVI D380 is a fantastic buy, that anyone who can afford should buy immediately. It can clean some pet hair from carpets, get crumbs out of corners, and sneak into low-clearance spaces. If the features and low price don't convince you, think of the entertainment value that a little robot vacuum running around your house will provide. The RTX 3080 launched on September 17 at 9AM, around 3 weeks ago from time of writing. The sad part? It sold out in minutes, if not seconds. Where did they go? I wish I could say gamers were thrilled to buy the next-gen RTX cards with eye-watering performance and an unparalleled generational upgrade. Except I can't say that. The sodding price scalpers on eBay all snatched them up, probably many of the same gits that poached the Ryzen 3 3300X. Unlike the situation with the 3300X, we can't just pay $40 more for the next step up the performance hierarchy after we realize these scalpers are just preying on ignorance. The little blighters are selling GPUs on eBay for more than double, sometimes approaching triple their $699 MSRP. These scalpers operate by buying all the inventory on launch to control the supply. If, in some wild fantasy, there was a reserve of GPUs fabricated before launch that would be released gradually, alongside continuous production, then we wouldn't have scalpers. But that would be ridiculous, Nvidia had to launch Ampere ASAP to prevent AMD's RDNA2 from launching before it. Keeping a reserve of cards in supply to release a couple of weeks after the initial launch, potentially a larger number than the launch inventory? Daft! Why would anyone ever do that, unless, of course, they valued customer experience more than being technically first for everything?
Well, if Nvidia is mistreating me, then I suppose I could just buy AMD graphics... oh wait, for years cards branded AMD Radeon brand lagged behind Nvidia's GeForce cards in terms of performance, efficiency, and often even value. Radeon also doesn't have CUDA, which means you have to rely on the less efficient and less popular OpenCL if you want to accelerate your code. Forget about machine learning and neural networks, Nvidia runs the show there. See the problem yet? Monopolies are illegal for a reason, and while technically a PC gamer or computer scientist could buy an AMD card or use Intel HD Graphics (cringe), Nvidia has been the undisputed king of performance for the better part of the decade, and in all likelihood, the gap should only continue to grow. The answer? I would hate Nvidia to be split up, and that probably won't happen, but we need to see AMD bring the heat. Uncle Sam can't just decide to make a top-of-the-line GPU or spin up a company to rival Nvidia. Lisa Su, use your CEO powers to invest more money in AMD's GPU development, because even though I'm an Nvidia fan in terms of graphics, I'm only a fan because I don't want second best. Honestly, we don't want to go to Intel for graphics, do we? Real-time raytracing is finally getting outside of Nvidia's castle, and while that has been making big waves, something else is brewing. Microsoft and Sony have outrageous dreams for the performance of their next-gen consoles, but as their AMD hardware doesn't seem to have Nvidia's DLSS, I see disappointment in their future.
Unless, of course, there was another way for them to process a low resolution image so that it looks respectable and increases performance? Nvidia's got their Tensor Cores, but what if an algorithm could be designed to run on AMD's stream processors with the same purpose as DLSS? Of course, this algorithm would need to be quite resource efficient so that the performance gained by the low rendering resolution isn't completely erased. Facebook's not going to be left out of the action, they've got a little thing called Neural SuperSampling in the works, which on the surface seems to be an alternative to DLSS, likely targeting Oculus. It has impressive results even on the daunting task of 16x upscaling. There are few... problems... to put it lightly. Neural SuperSampling requires an Nvidia Titan V to push 40 fps at Oculus Quest resolution, 1440 x 1600 per eye. Seems like there's still a bit of work to do, especially since the Titan V has the same Tensor cores and CUDA support that is in short supply. Back in the console field, Microsoft announced DirectML, a low-level machine learning API, which is what they will be using to compete with DLSS. Sony? Well, their PS5 is packing around 10-15% less GPU power than the Xbox Series X, but the PS5 has more dynamic frequencies for their CPU and GPU, so the 'agility' Sony's been harping on might hold some water. The Xbox Series S will only have 4 TFLOPs of shader power to output ray-traced 1440p, but maybe with a bit of magic from Microsoft the eight Zen 2 cores can pick up some slack for the GPU via machine learning? Or will they use the already limited GPU FLOPS? We shall see, but look out for an update this winter on the performance of the Series S. Most of know about Nvidia's new pet, RTX, even if we don't have a DirectX Raytracing-enabled card. Even for those of us lucky (or committed) enough to have a 20-series or 30-series card with RT cores, raytracing causes a massive hit to performance. Minecraft Bedrock Edition RTX is an excellent example of this. Of course, our tests will run on Firebolt, our trusty test rig packing a reference clock Nvidia 2080 Super, AMD Ryzen 7 3800X, and 32GB of DDR4-3200 CL16 driving a 1440p 144hz (unofficially) G-Sync compatible monitor. In Minecraft Bedrock we rock a stable 144fps with 32% GPU usage when raytracing is disabled, all the vanilla graphical fanciness, and a 64-chunk render distance. When we flip the DXR switch, we plummet to around 35-45fps, which is a stuttery nightmare on its own, without going in and out of FreeSync. Luckily, there is another switch in there that we should also flip, the one labelled 'Upscaling'. When you flip this, you enable DLSS 2.0, a proprietary Nvidia technology that is based on using deep learning in Nvidia's DLSS supercomputer to analyze games and determine some computationally efficient techniques that can be applied to a low resolution image to improve performance and/or visual quality without any perceptible sacrifice. Once Jensen's boys have determined what charms and enchantments will help with the game in question, DLSS is integrated into the game so that when enabled and the game is suffering from a GPU bottleneck (i.e. you aren't using an 8-year old Celeron at 1080p). When you enable this glorious countercurse to RTX's damage, Minecraft's framerate shoots up to a buttery 75-85fps and there is no perceptible change in visual quality. AMD, Sony, and Microsoft have to have something along these lines in the works for the PS5 and Xbox Series X. Without some AI magic, 10-12 TFLOPS running 4K60, let alone 8K60 or 4K120, is a pipe dream at best, even with generous speculation on the performance of RDNA2. Stay tuned for updates on the game industry's upscaling wizardry, the secret weapon that makes raytracing practical.
|
DanielI'm a software engineer, volunteer IT support, amateur blogger, casual gamer, and tech enthusiast. I also love cars and the great outdoors. Archives
May 2021
Categories |