PDA

View Full Version : ranDomNeSS...or not


JeremyW
10-07-2002, 11:42 AM
Could someone shed some light on the issues surrounding mixed client Net farms. First there was issues with the XL native particle system. Baking was added to resolve this. Then there was the issue with PyroC, where the procedural noises would render differently form mac-client to win-client (still unresolved AFAIK). Now I hear that things like soft-IK don't like a mixed client render farm.
Waz'up wi'dat?

The answer I usually hear is that different CPU's generate different randomness. With my limited understanding of such things, I thought that computers don't really do real randomness, but rather a sort of pseudo randomness, or a pattern generated by an algorithm to simulate randomness.

So why can't all these processes simply use a shared pseudo-randomness generating algorithm, rather than allowing each CPU type to wing it.

After all, SLA noises work just fine across platforms.
It would be SWEET, if when a "random" element is required, rather than dipping into the black box of platform dependant randomness, why not allow us to specify our own flavor of SLA as a pseudo-random data source. SLA noises could be used as gray-scale pseudo-random gradients to generate source data to give the impression of randomness.

Am I way off base here...or on the brink of a darned good idea?

Per-Anders
10-07-2002, 04:49 PM
that sounds excellent to me Jeremy, you certainly get my vote... i think that if software is designed to work accross platforms on a network then it's vital that it gives the same results... i mean, people would be really pissed if after effects or combustion came out with different results from different machines from a net render... so why should those that pay more (for high end 3d software) get less?

the only thing is i'm not sure how these things work entirely, but tihnking particles and soft ik use a recursive algorythm, and i don't know if there's actually a implicit random field in there, or if it really is something weird to do with the fpu's in the different machines coming to different results from repeatedly doing the same calculation (hey that puts a right kilter on all science that uses computers to calculate the results :surprised ... not to mention you ain't getting me in a plane again after thinking about that, what if they had a diffferent chip on the plane and at the tower.?....)

Srek
10-07-2002, 06:29 PM
Hi,
as already mentioned on Postforum you have to seperate Random Noise and Random behaviour due to different FPU precision. The Soft IK as well as Dynamics suffer from those differences. Usually you will not notice them since they are very small, but when used in an incremental way (as they have to be used in Soft IK and Dynamics) those differences show up. In a rendered image those differences will usualy not be noticable most times even not when comparing images directly, but a chain of animation calculations is a different thing.
FPU precision is one of the reasons why the Mac Altivec Unit is not usable for rendering. It's precision is to low, so effects will show very early.
Technically it is possible to create an own Floating Point library that does not use the FPU capabilities of the CPUs but this would mean a speed decrease of several hundred percent (i think we would end up on a 486 / 68020 performance level) since the FPUs are highly specific (and fast) components.
Hope this helps a bit
Regards
Srek

CGTalk Moderation
01-13-2006, 06:00 PM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.