antoine wrote:
> I'm developing / sup****ting a java "client" application (running on PCs
> with XP pro, jre 1.5) which is a high performance trading client. it
> receives market updates, displays them on screen (swing), does a serie
> of computation, and performs several actions based on computated values
> (order sending, cancelation, etc...). it is designed to run for 8 hours
> straight without interruption, does not access any database, only uses
> socket-based I/O, and is correctly multi-threaded.
>
> I'm looking at upgrading our workstations, to hopefully get a speed
> increase. currently, our "base computation" routine takes around 5ms
> average, and I'm looking at reducing this number (I'm also looking at
> improving CODE performances, but this post is about hardware).
>
> currently we're running on dual CPU intel Xeon 2.8GHz, roughly 3 years
> old, with 1GB RAM. virtual memory usage is around 128MB, so I believe
> RAM is not an issue.
>
> which kind of upgrade would sound smart to you ? I've seen technologies
> like:
> - all the "dual core" family
> - 64-bit architecture (although no JVM for intel on XP pro 64-bit)
> - simply pu****ng the frequency to 3.6GHz...
>
> does 64-bit make sense ? or is it only for memory intensive application
> (we're more concerned with execution speed) ?
>
> any insight or link to any informative page would be most welcome !
I agree that more memory will probably not help.
Higher frequency will almost certainly help (3.6/2.8 is +28%, but it
is not certain that the GHz are divideable like that).
Switching to 64 bit in itself does increase calculation speed, but
because x86-64 has more registers than x86 it may actually give
some (like +10%).
If you can parallelize to 4 execution units then 2 dual core CPU's will
certainly give a huge jump compared with the current 2 single core
CPU's (like +80%).
If your app frequently access data in the few MB range, then the
extra L2 cache in newer CPU's may also help.
Arne


|