We, some members of the HiPE group, are currently in the process of
investigating various alternative heap architectures for concurrent
programs, with emphasis (sic!) on Erlang ones.
Among these architectures, are the current R7B-* one (each heap has
its own process) and a "unified" (i.e., common) heap architecture for
all processes, but also other variations either in the heap
organization or in the GC scheme employed.
(Yes, I know the issue has been discussed in this list before, but
since I am willing to bet that it is bound to be discussed again, we
want to investigate it and provide a definite answer and detailed
performance results that will shed light to the pros and cons of each
scheme and will result in a long document which hopefully not appear
only in the FAQ of this list ;-).
Anyway, this mail is a request/plea for "interesting" (and preferably
"real-life") concurrent programs that can be used for benchmarks by
us. Any sort of "interesting" benchmark that involves a significant
amount of interprocess communication will do, and we will even let you
decide what "interesting" really means there. Minimally, we would like
programs that have been used as benchmarks before in a similar task
(Robert, this is for you).
If you wish, we are willing to sign any sort of NDAs for the code we
get. Also, we give you our word that we are going to try to not even
look at your code (let alone understand it :-) if we do not
necessarily have to!
In return, we promise to:
- add your name to the acknowledgement section of the above
mentioned document if we end up using your program as benchmark,
and more importantantly,
- try to incorporate the "winner" configuration to some future
Erlang/OTP release so that your favourite programs run faster.