Blender and 64-bit processors...

General discussion about the development of the open source Blender

Moderators: jesterKing, stiv

konrad_ha
Posts: 0
Joined: Wed Jul 21, 2004 12:15 am
Location: Munich | Germany | Europe
Contact:

Blender and 64-bit processors...

Post by konrad_ha »

Hi there,

I searched the forum for topics containing "AMD 64" and "64 bit" and found ... nothing :shock:

To me it seems as 64-bit is all the hype currently and everybody is trying to do something with it. But what about Blender? Obviously a 3D-application would profit a lot from 64-bit architecture, it should enable faster and/or better rendering.

Is there anything going on in this direction?

Greets,

Konrad

xand
Posts: 33
Joined: Wed Oct 16, 2002 9:46 am

Post by xand »

gimme a 64bit platform and i'll make you a build :)

blender works well here on my pII 350Mhz and my ati rage pro :)

+++

noselasd
Posts: 12
Joined: Wed Oct 16, 2002 12:08 pm

Re: Blender and 64-bit processors...

Post by noselasd »

konrad_ha wrote:Hi there,

I searched the forum for topics containing "AMD 64" and "64 bit" and found ... nothing :shock:

To me it seems as 64-bit is all the hype currently and everybody is trying to do something with it. But what about Blender? Obviously a 3D-application would profit a lot from 64-bit architecture, it should enable faster and/or better rendering.
Konrad
Blender should already be working on 64 bits processors.
I don't really see why 64 bits should make any diffrence in rendering or speed(aside from the fact that the AMD64 are just generally fast..)

konrad_ha
Posts: 0
Joined: Wed Jul 21, 2004 12:15 am
Location: Munich | Germany | Europe
Contact:

Post by konrad_ha »

I don't really see why 64 bits should make any diffrence in rendering or speed
The 64-bit allow for far more accurate math, something very useful in 3D-calculations (and graphics-calculation in general). This can be used to either improve the quality of the images or to speed up the rendering process.

Antares
Posts: 0
Joined: Fri Nov 14, 2003 4:04 pm

Post by Antares »

64bit architecture wont make that much of a difference because it refers to the INTEGER registers of a CPU. the really important thing for rendering is the FPU (Floating Point Unit), which is already 80bit internal and wont get upgraded.

the really interesting thing for improving rendering speed are additional instruction sets and registers like SSE(2) which are SIMD (Single Instruction Multiple Data) operations like those in vector processors.

something like 64bit INTEGER registers is very important for (a)symetric encryption, because the larger the registers the more calculations you can do in a single step when processing BigIntegers (=any number larger than the maximum a single register of a CPU can hold)

Antares
Posts: 0
Joined: Fri Nov 14, 2003 4:04 pm

Post by Antares »

konrad_ha wrote:
I don't really see why 64 bits should make any diffrence in rendering or speed
The 64-bit allow for far more accurate math, something very useful in 3D-calculations (and graphics-calculation in general). This can be used to either improve the quality of the images or to speed up the rendering process.
Yes, but only integer calculations and 3D calculations are - guess what? - floating point based.

sorry, i am right you are wrong.

ideasman
Posts: 0
Joined: Tue Feb 25, 2003 2:37 pm

Post by ideasman »

how does a AMD64 3000 compare to a AMD32/XP 3000+?

I realy want to know!!! (I use linux-)

slikdigit
Posts: 133
Joined: Wed Oct 16, 2002 3:52 am
Location: Northampton, MA (US)

Post by slikdigit »

64 bit arch also increases the memory space, = more memory available

chimera
Posts: 41
Joined: Wed Jun 11, 2003 11:41 am
Location: switzerland
Contact:

Post by chimera »

ideasman wrote:how does a AMD64 3000 compare to a AMD32/XP 3000+?

I realy want to know!!! (I use linux-)
well honestly I dont know. but anyways a nice "not-only-windoze-benchmarksite" would be nice

Antares
Posts: 0
Joined: Fri Nov 14, 2003 4:04 pm

Post by Antares »

slikdigit wrote:64 bit arch also increases the memory space, = more memory available
the problem with "more memory" is, that:
1.the term 64bit has to refer to the address lines and not to the data lines.
2.the OS has to support it. for instance std windows like you and me use has a problem with managing more than 2 GB.
3.you have to afford it. 4GB DDR RAM cost about 800-1000 bucks.
4.you have to actually use it. i can hardly imagine a blender scene which uses more than 4 GB.

konrad_ha
Posts: 0
Joined: Wed Jul 21, 2004 12:15 am
Location: Munich | Germany | Europe
Contact:

Post by konrad_ha »

Yes, but only integer calculations and 3D calculations are - guess what? - floating point based.
AFAIK there's plenty of integer-based calculating going on in 3D-engines as well. What about physics, softbodies, particles, occlusion etc.? All done in ultra-precise floating-point-math? I didn't think so.
sorry, i am right you are wrong.
:lol:

JWalton
Posts: 58
Joined: Sun Oct 13, 2002 7:39 pm
Contact:

Post by JWalton »

Yes, blender has been built for 64bit machines: MIPS based SGI, and Alpha based PC's
No, it doesn't make any difference.

a good processor doesn't make a bad app run faster.

Eric
Posts: 163
Joined: Wed Oct 16, 2002 1:01 pm
Location: Sweden, Norrköping

Post by Eric »

a good processor doesn't make a bad app run faster.
What is that supposed to mean? :)

Antares
Posts: 0
Joined: Fri Nov 14, 2003 4:04 pm

Post by Antares »

konrad_ha wrote: AFAIK there's plenty of integer-based calculating going on in 3D-engines as well. What about physics, softbodies, particles, occlusion etc.? All done in ultra-precise floating-point-math? I didn't think so.
hum... if you know so much about blender and rendering, why dont sign up to the developer team?

i have to confess, i am no developer myself, BUT i had a close look at the code for my intel compiler based build of blender. i ran several profiling on modules and analysed the results.

for further information read these threads:
http://www.blender.org/modules.php?op=m ... pic&t=3778
http://www.blender.org/modules.php?op=m ... pic&t=4310

ANY important subroutine in blender which is used in rendering process is using floating point operations or more specific single-precision floating point untis or just "floats" in programmer slang. (btw, ultra-precise floating-point-math is nonsense)

you metioned several example which you think are based on integer arithmetic....
first of all "physics", for which i wont even need the blender code.
just a question: what grade did/do you have at school? i guess a very bad one, if you think that physics can be managed with integers.
physics is one of the mayor areas where you actually need floating point math.

*starting-up-notebook*
now have a look at your example in the code:
i am searching for "occlusion" and "ray.c" shows up. searching for "occlusion" again and guess what i first see? vectors defined as floats within function ray_ao(...)

next... searching in "rendercore.c" for "occlusion". function static void ambient_occlusion(...) and again floats everywhere.

perhaps you meant z-buffer and not occlusion. but since z-buffer offset in blender is again using a floating point unit this would also be wrong.

ok next one... particles:
searching in "particle.c"... again floats everywhere...
so exactly where would 64bit integer be relevant here?
(particle position, life time, offsets, vectors, ...)

just some examples where you need integers:
1.cryptography (already mentioned)
2.string comparison
3.control structures (loops, logic)
4.address arithmentic
5.data arithmetic
6.bit masks/bit rotations

anyway.. 64bit is only an advantage if you really need the values space of 2^64 or you manage to do some 32bit based operations parallel which can often only be achieved by hand and must of course be supported by the instruction set. thus 32bit are sufficient everywhere.

and before i gonna buy a 64 bit processor, i take a good intel processor with intel compiler optimized software for it.
konrad_ha wrote:
sorry, i am right you are wrong.
:lol:
hum... i am currently the best in my computer science semester (#4).
i wrote my own bit integer arithmetic and i am programming assembler for 3 years now. i know very well what i am talking about.

and one of the fastest blender builds out there carries my name.

now it's your turn to tell me where you got your insights from.
Last edited by Antares on Wed Sep 01, 2004 2:24 am, edited 2 times in total.

Panther
Posts: 0
Joined: Tue Mar 04, 2003 7:55 pm

Post by Panther »

Hmmm... I see this topic turning nasty within a few more posts !!! :wink:

konrad_ha...

From what I can tell, blender has not yet been optimised specifically for 64-bit architecture, so will doubtfully perform that much better than any other 32-bit app on a 64-bit processor - But who knows what the future holds.

As Antares rightly said, he is the owner of the fastest ( Intel optimised ) build to date, so I'm guessing he knows his stuff. :wink:

Antares...

Do you have the Intel compiler for Linux as well as Windows / are there plans for an optimised Linux build ???

Everyone...

Personally, I'm still struggling to get Blender working on my AMD64 under Fedora Core 2...

http://www.blender.org/modules.php?op=m ... pic&t=4349

I'm a bit of a Linux newbie ( recently migrated from Windows ), but it seems that Blender is looking in my libs directory, when the files it needs are in libs64. :?

If anyone can explain ( in simple terms ) what I need to do, I would be most appreciative.

As a temporary solution, I'm running the Windows version on my Linux box via CrossOver Office ( http://www.codeweavers.com/site/products/cxoffice ). :(

Post Reply