Browse thread
Re: OCaml is broken
[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
| Date: | -- (:) |
| From: | Erik Rigtorp <erik@r...> |
| Subject: | Re: [Caml-list] Re: OCaml is broken |
On Tue, Dec 22, 2009 at 14:27, Gerd Stolpmann <gerd@gerd-stolpmann.de> wrote: > > Am Dienstag, den 22.12.2009, 13:04 +0100 schrieb Erik Rigtorp: >> On Mon, Dec 21, 2009 at 23:50, Erik Rigtorp <erik@rigtorp.com> wrote: >> > Some IPC Benchmarks, Solaris 10 on a quad core Intel Core2 Duo. The >> > benchmarks are running on a cpuset with 1 core. I measure the time >> > from sending in one process until the other process receives the >> > message. So a context switch and the message passing is included in >> > the measurements. >> > >> > Max/Min/Avg >> > * Pipes: 28205/5973/6259 >> > * Unix domain sockets: 44256/7748/8153 >> > * SYSv message queues: 19197/5895/6173 >> > * Posix message queues: 37399/10965/11303 >> > * TCP on loopback: 29017/7471/7885 >> > >> > So the latency is roughly 10µs for all these solutions. That latency >> > is pretty high and would be several times the processing time of the >> > message itself. >> >> Some more benchmarks: >> >> Max/Min/Avg >> * Spinlocking shm: 50897/403/761  (This one utilizes multiple cores, >> since one core is just burning while waiting for data) >> * Pthreads mutex shm: 27582/5246/6577 >> >> Forgot to say that all measurements are in nanoseconds. > > That's for communication between processes, right? How would the picture > be different (especially comparing the latter two) if you do message > passing between threads? If I remember correctly, threads are more > light-weight in Solaris than processes. That could also affect context > switching times, and scheduler decisions. With a system supporting green threads/tasklets/erlang processes over multiple cores you can have 1µs message passing latencies without busy waiting. I'll checkout the thread message passing too, but probably not until after new years. > Do you have source code? I could also run in on Linux, for comparison. I'll have that approved by my company first. It would actually be interesting to create a open source multiplatform IPC message passing benchmark. Erik