Hi, Sorry for wasting your time...
The problem I had was due to a waiting thread on the receiving side that was only processing events after a timeout. An incoming object from the stream should have woken it up imediately instead. Thank you all for your help, it helped me eliminate a lot of possible causes. On Friday 17 September 2010 13:28:14 Silas De Munck wrote: > Hello, > > In the context of a distributed discrete event simulation, I need to be > able to send objects at a high rate between program instances on different > hosts. Initially I implemented this using remote calls to an object > instance living on the other side. This performs fairly well, but because > essentially I only need a one-way stream-connection with asynchronous > sending, I thought using the RMI mechanism for this was not the best > solution. Therefore I added a TCP implementation using Sockets and > ObjectStreams. > > Now comparing the RMI and the socket implementation, the results are > somewhat strange. I expected the sockets to perform better because of the > reduced overhead, but this isn't the case. My (naive) socket > implementation only reaches about 25% of the througput rate of the RMI > implementation. > > Does RMI use a different (faster) serialization implementation, compared to > the serialization used with ObjectInput/Output-stream? > Are there any other differences that could explain the performance > difference? > > Any pointers on where to start investigate this issue would be very much > appreciated. > > Regards, > > Silas -- Silas De Munck PhD Student Computational Modeling and Programming (COMP) University of Antwerp Middelheimlaan 1 2020 Antwerpen, Belgium G2.07, Department of Computer Science and Mathematics e-mail: silas.demu...@ua.ac.be