2,828 karma · joined April 4, 2011
https://pixelesque.net/ https://pixelesque.net/blog/
Having said that though, as someone who got an M1 MBP (10-core) a few months ago, I also found that CPU-wise (ignoring memory/cache bandwidth, which is much faster on the Mac), it wasn't really any faster than a 2012-era dual-socket 4 core Xeon at 3.3 Ghz for compiling and raytracing (the latter doing lots of FP calculations which I'd expect the M1 to compute OOO really well with how wide it is) when the code was CPU-bound. The power usage is very different though obviously. Hyperthreading also helped the Xeon quite a bit.
Battery life is very impressive though, and haven't really heard the fans yet.
And because it's not clear how OS schedulers could nicely switch on-the-fly between cores with different instruction set capabilities, it's essentially not use-able.
(The FAQ doesn't seem to answer that)
Smaller studios use Windows/Mac a bit more (boutiques use Macs the most), but the removal of the Xserve and the lack of competitiveness in the MacPro for several years have shifted some away from Mac.
I can say though, that Manuka's a CPU renderer only (it used to be a GPU renderer as well, but that functionality was removed years ago).
"Raytracing" is a bit of an overloaded term, but conventionally "Raytracing" for graphics meant a serious of "raycasting" events, and "Whitted" style was a technique which could approximate reflective and refractive materials fairly accurately (as long as you modelled the fresnel effect and absorption) in a recursive style. Modifications on top of this are also to do limited indirect rays for global illumination and this was used a bit (in film/CG VFX in hybrid renderers like PRMan pre 19), but doing global illumination this way was pretty slow and didn't scale well (an exponential branching factor at each bounce). So technically, the article is sort of correct on this point, as Pathtracing is more smart about how it handles the full rendering equation of "all" light transport simulation, and is faster than Raytracing for high fidelity (i.e. global illumination, area lights), due to its stochastic nature of sampling multiple dimensions of lights, surfaces, volumes, etc across many samples per pixel.
Pathtracing does take reflection and refraction into account, but generally (there's a technique called 'splitting', which sort of branches the paths to make it more like 'Whitted' raytracing, but ignore that for now) it relies on "importance sampling" to make smarter decisions, based off the material response (diffuse, glossy, reflective, refractive), which guides the direction of the next ray off the previous surface. This generally means that due to the "random" nature of pathtracing sampling (it uses monte carlo random sampling), predominant lighting is generally more efficient, although things like caustics, SSS and indirect illumination can still be very noisy as they're hard to sample and can take thousands of samples to resolve to "clean".
There are other techniques like Russian Roulette to kill particular paths which don't have much throughput and/or light contributions, which can speed up renders as well, and I think is what the "dumping most or all of the secondary ones doesn't affect things as much as one might think." part is referring to.
ROCm builds are effectively hardware-specific (and officially Linux-only).
Why is a decade needed? The forum.dev domain name in question was registered a year ago on 2021-12-06...
I'm talking about the actual HPC algorithm code heavily priortising performance (or in some cases memory efficiency), at the expense of pretty much everything else (other than correctness, obviously).
But anyway, in my experience a lot of the crashes are often due to quickly hacked together plugins for the various DCCs written for artists, that don't have good error checking or testing, and it's not completely clear to me how that situation's going to improve that much with something like Rust, if the same programmer time constraints are going to exist in writing them: i.e. I think it's very likely people will just unwrap() their way to getting things to compile instead of correctly handling errors, so it will be the same situation from the artists' perspective: technically it may be a panic rather than a segfault, but from the artists' perspective, it will likely be identical and take the DCC down.
I'd argue it could be termed "what-aboutism", but I personally fail to see how that matches my definition of "lashing out"...
In other words, it's mostly only good for detecting if a JPEG (with compression artefacts) was edited and saved to another JPEG, although even then you can work around it to some degree by saving at similar chroma and compression qualities if you know what you're doing.