[erlang-questions] trading systems
Thu Oct 1 21:07:15 CEST 2009
> No need to put myself at a disadvantage from the start by picking an
> inefficient approach to price data management and processing.
Premature optimization *IS* the root of all evil. Specifically,
because you make decisions on optimization in the absence of
information. Processor cache is a very unpredictable beast in the
face of multiple cores. Trying to predict how it behaves when other
code is in the pipeline is unfortunately optimistic. Multicore
systems inherently increase latency and decrease cache performance.
Erlang is optimized for these. Any information you have regarding
cache behavior is highly unlikely to be directly applicable. Test and
profile, early and often. It's the only way to go.
It is entirely possible (due to the design goals of Erlang) that you
might not even be able to wring the speed you need out of it. Get
something running, profile it, and fail fast if necessary. Putting
2000 lines of C before running a profiler is not a timesaver--even in
the world of cutthroat performance.
More information about the erlang-questions