I have a .jar file that represents a server which receives over TCP an image in bytes (of size at most 500 kb) and writes it file. It then sobels this image and sends it over TCP socket to the client side.
I ran it on my laptop and it was very fast. But when I put it on Amazon EC2 server m1.large instance, i found out it is very slow - around 10 times slower. It might be the inefficiency in the code algorithm but in fact my code is nothing but receive image (like any byte file) run the sobel algorithm and send.
I have the following questions:
2- Even if the code is not that efficient, the server is finally handling a very low load (just one client), does the "inefficient" code justify such performance?
3- My laptop is dual core only...Why would the amazon ec2 server have worse performance that my laptop? How is this explained?
Excuse me for my ignorance.