Advertisement

Advice on a new computer....

Started by April 09, 2021 11:31 AM
7 comments, last by Vilem Otte 3 years, 7 months ago

Well my computer is about 10 years old and is getting a bit long in the tooth. It's about time to buy a new computer, but I tend not to keep track of the latest in hardware. So if any hardware hounds want to give me some advice that would be appreciated. Here's a few questions…..

I'm partial to intel CPUs but only because I worked for intel for 25 years. I gather these days AMD is superior from what I've read, but I'd like to hear opinions. I'm looking for CPUs in the range of i9 or Ryzen 9. Reliability is very important to me because I change computers rarely, so I would give up some performance for that.

Last time I bought a computer water cooling didn't seem like a hugely popular choice, however now it's a big deal. I gather some people still like air cooling. Any opinions?

Also what's the consensus on graphics cards keeping in mind I would like to dabble in ray tracing at some point since all my geometry is built in an octree anyway. I guess I could skimp a bit there since I want my code to run on average graphics cards too. What's a good medium high end card that doesn't cost an arm and a leg.

Finally I would be happy to hear any other advice folks might deem relevant. Thanks.

After using first gen i7 for 10 years i upgraded to Ryzen 2700 a year ago. Very happy with it. Was really cheap and for a 65w CPU feels very powerful. With 8 cores i get speedup of almost an order of magnitude from MT, so the extra work to get this is always rewarding. I only regret to have saved on RAM. 16GB is a low limit to me now.

Also what's the consensus on graphics cards keeping in mind I would like to dabble in ray tracing at some point since all my geometry is built in an octree anyway. I guess I could skimp a bit there since I want my code to run on average graphics cards too. What's a good medium high end card that doesn't cost an arm and a leg.

Would like to get some AMD 6XXX, but could buy a car instead for the money. I assume situation won't improve this year, so we are stuck. Pretty happy with my Vega56, was very cheap and compute perf. is great. If you can, keep your current GPU until new stuff becomes ‘available’.

Gnollrunner said:
I would like to dabble in ray tracing at some point since all my geometry is built in an octree anyway.

You know you can not use your tree to help HW RT, so i guess you want your own compute solution like Crytek did?
Personally i've abandoned such plans. Until your game is done HW RT should have landed even on entry level GPUs i guess.
Currently i do a mission of ranting against DXR and RTX because there is no good way for proper LOD, but if we complain long enough, situation should improve on that too, i hope. AMDs RT solution is more flexible (no fixed function traversal, so in theory it could do stochastic LOD or other things with compute), but as long they do not expose the flexibility with extensions, we are restricted to DXR here too. So, i'm not that excited about RT yet, and waiting until current mining craze is over is fine to me.

Advertisement

JoeJ said:

After using first gen i7 for 10 years i upgraded to Ryzen 2700 a year ago. Very happy with it. Was really cheap and for a 65w CPU feels very powerful. With 8 cores i get speedup of almost an order of magnitude from MT, so the extra work to get this is always rewarding. I only regret to have saved on RAM. 16GB is a low limit to me now.

Really? Is the memory just for especial stuff you do, or do most game systems have over 16GB now. My current system has 64 GB but I never really used it so I was thinking 16GB would be enough. Is 16 high, low or average these days?

You know you can not use your tree to help HW RT, so i guess you want your own compute solution like Crytek did?

Actually I have no clue about HW RT, LOL. I was thinking I could somehow send my octree with triangles down to the GPU. Right now I'm just pulling tris out of the octree forming meshes and sending them down. I do LOD myself CPU side, including reforming octrees and mesh chunks and generating normals. I support seamless space to surface transition. I have the system pretty much down pat now, although it was hell to figure it all out. In any case, is there any reason I can't control how an octree is created on the GPU from the CPU? I don't expect it to happen automatically.

Really? Is the memory just for especial stuff you do, or do most game systems have over 16GB now.

Special - fluid sim, where i can not do out of core because i would need to save each frame state to disk. So i'm limited to something like 20 million particles at most.

Actually I have no clue about HW RT, LOL. I was thinking I could somehow send my octree with triangles down to the GPU. Right now I'm just pulling tris out of the octree forming meshes and sending them down. I do LOD myself CPU side

Yeah, then you would have similar problems than i have:

HW RT needs to build its own BVH. You can not help this if you already have acceleration structure. You can not stream that BVH from disk - it has to be generated at runtime by graphics driver. BVH is black boxed and static. You can not use it for something else, you can not modify it (e.g. to support dynamic LOD).

BVH is formed from ‘bottom level acceleration structures’ (which you likely generate ‘per model’).
And a ‘top level AS’, which is generated over all BLAS in the scene.

Nothing to criticize here, but not everything can be divided into ‘models’, e.g. terrain with LOD is a problem. We can make BLAS for chunks, but we can not have dynamic stitching accross LODs, for example. We could eventually make stitching sections with their own BLAS, or we could use skirts to close the gaps, accepting discontinuities.

But all that sucks ofc. What we want is to alter BVH manually, and build it completely ourselves, to do it faster and at higher quality.
That's surely a problem because each GPU vendor likely has different BVH format. For the same reason there is no support to cache generated BVH to disk.
My biggest hope is on Epic: If they want RT support for UE5 geometry (which seems discrete patches of different LODs, probably a hierarchy of those patches), they might eventually push towards a BVH API, or at least vendor extensions exposing their proprietary data structures.
No problem for AMD because they only have triangle and box intersection hardware (So in thery it could use your octree or my BVH for RT). But big problem with NV because fixed function traversal, so HW has certain but unknown requirements on the data.
No idea about Intels (or any vendors) plans on how this might change with future HW, so my ‘big’ hope is actually quite small.

Personal opinion: RTX is shortsighted design and not future proof because not flexible. LOD is an open problem, and now our options to solve it are pretty much none. >:(

… let me know if you come up with something… ; )

Get the best Ryzen CPU you can afford. 32GB of RAM. M2 SSD for your OS and a SATA SSD for data. GPUs you can't find, but the RTX 3080 would be a good choice. Water cooling is not needed unless you are overclocking. You might have better luck buying a pre-built as good CPUs/GPUs are impossible to find at reasonable prices.

… let me know if you come up with something… ; )

I think I'm going to look into this a bit more. A quick google shows me there is some sort of Vulkan extension for RT with an “Acceleration Structure”. I'm not sure exactly what it will let me do but it seems there is something there. Perhaps it's not that useful for my application but it might be worth a look.

Advertisement

Gnollrunner said:
Last time I bought a computer water cooling didn't seem like a hugely popular choice, however now it's a big deal. I gather some people still like air cooling. Any opinions?

Water cooling is big among folks who like showing off their water cooled PC. Not sure it's any more prevalent outside those circles, though.

On my current PC I did go with an all-in-one water cooler for the CPU, but that's mostly because it's a Mini-ITX case, and I can't physically fit a full size CPU cooler in the case. It's nice and quiet, but that advantage is entirely erased by the howling fury that is my GPU fans… And water-coolers for GPUs are quite expensive.

Tristam MacDonald. Ex-BigTech Software Engineer. Future farmer. [https://trist.am]

@swiftcoder

swiftcoder said:

Water cooling is big among folks who like showing off their water cooled PC. Not sure it's any more prevalent outside those circles, though.

Yeah I just noticed this trend. I'm really surprised by the art aspect of computer hardware these days. …. water, LED lights, crazy looking cases. ….. I just like a rugged black case, fast CPU and enough memory and disk space to do what I need. However I have to confess, 40 years ago I loved my friends Ithaca Intersystems computer because it had a functional front panel, not that it was so useful for much. I guess it was because, at one point I had a chance to program a PDP-8 and an HP 2100 from the switches, and I thought having a front panel made it a proper computer LOL! Maybe if they brought front panels and horizontal mounting back, I'd be into it :D

Gnollrunner said:
I'm partial to intel CPUs but only because I worked for intel for 25 years. I gather these days AMD is superior from what I've read, but I'd like to hear opinions. I'm looking for CPUs in the range of i9 or Ryzen 9. Reliability is very important to me because I change computers rarely, so I would give up some performance for that.

On my main box I currently use AMD Ryzen 9 5900X (I managed to get one back in November/December last year). Other than that - this is selection of CPUs which I used in past few years (~5 or so), and which are still running fine: AMD Ryzen 7 1700, AMD A10 7870K, Intel i3 6100T, Intel i5 8250U

All of these CPUs were fine, and are still running well. The worst experience with CPU I had was lack of performance on Mac Mini back in 2014 or so … it was good for few years, but didn't age well in terms of performance (I'll see what will situation be with new Mac Mini with M1 CPU, hoping that it will keep up for at least 5 years), it is still runnable though.

My current recommendation would be Ryzen 9 or Ryzen 7 (while 5800 has the worst cost/performance ratio, it still is good CPU that will age well), Intel is just way too behind now and it may take them year or more to catch up (with 11th Core series being major failure, as in benchmarks they are sometimes inferior to 10th Core series), it is just not good CPU in terms of cost/performance.

Gnollrunner said:
Last time I bought a computer water cooling didn't seem like a hugely popular choice, however now it's a big deal. I gather some people still like air cooling. Any opinions?

I had mainly air cooling in the past, but for current rig I've decided for water cooling. Unlike my friend who is crazy (and makes his own), I used pre-built closed one for CPU - Corsair H150i - keep in mind that water cooling means you will need big case (I'm using Fractal Design Define S2, big coolers nicely fit on top of it).

Air cooling is still good, this is basically up to your choice. Water cooling is more efficient in getting heat out. When in small use (working on source code, writing, etc.) it is silent and temperature is almost room temperature. In use it tends to raise of course.

Gnollrunner said:
Also what's the consensus on graphics cards keeping in mind I would like to dabble in ray tracing at some point since all my geometry is built in an octree anyway. I guess I could skimp a bit there since I want my code to run on average graphics cards too. What's a good medium high end card that doesn't cost an arm and a leg.

I'm one of the few that own Radeon 6800 (I got lucky, but long story short - if you didn't order within TWO minutes of launch, you most likely don't have it). The situation on GPU market is terrible - you either are lucky and get a launch one (at good cost - mine cost about $550 or so), or you have to buy for inflated price. The situation is so terrible right now, that official resellers here sell the same GPU up to 4 times the launch cost (reason why reference cards are gone now - because they had hard prices, and resellers couldn't over inflate them). And they're still sold within minutes.

Better option might be to buy whole rig, and ask them if they can replace CPU/Memory/etc. for you. In my country there was never any piece of new 6700 available, companies put it straight into rigs, angering their customers.

Situation will not likely get better in following 5 - 6 months (it's not due to covid, yet it is easy to blame it on such - as those countries were never in lockdown - but mainly due to major vendors relying on very few fabrication facilities, that are overloaded, doesn't have all lines finished/running, and some has other major issues since beginning of this year (shortage of water F.e.)).

The funniest situation happened here in local hospital (I have relatives working in there), who received “new computers”, but without CPUs and GPUs - as those were not available. They still don't have them even months later.

Gnollrunner said:
Finally I would be happy to hear any other advice folks might deem relevant. Thanks.

My advice? Patience, it may take weeks or even months to get hardware one wants these days - be prepared for that.

Apart from few exceptions (that are badly designed), there is no bad hardware, there is just bad price on hardware.

My current blog on programming, linux and stuff - http://gameprogrammerdiary.blogspot.com

This topic is closed to new replies.

Advertisement