Why is my laptop 10x faster than my Linode?
5 Replies
After that, you'll probably want to use ruby-prof to generate a cachegrind dump of the application so you can see where it spends most of its time, then design benchmarks around that.
Perhaps you could describe what your application does, what type of calculations, if a database is involved, if you're using caching, what role the VPN plays, etc. All we know is that you have a Ruby application.
MSJ
For instance my Samsung ATIV Book 8 laptop uses Core i7 3635QM at 2.4Ghz base and 3.4Ghz Turbo Boost
Also Linode 8GBVPS only has 6 cpu cores, so your Intel Core i7 based laptop most likely is quad core with HT = 8 cpu threads, so pretty much more cpu threads available than Linode if you are testing with Ruby which is multi-threaded based. If it's single thread based then it's pretty close depending on your laptop's single threaded Turbo Boost clock speed profile compared to Linode's E5-2680v2 single threaded Turbo Boost clock speed of 3.6Ghz.
checking local specs of MacBook Pro with retina display can be configured to
> 2.5GHz quad-core Intel Core i7 processor (Turbo Boost up to 3.7GHz) with 6MB shared L3 cache
Configurable to 2.8GHz quad-core Intel Core i7 (Turbo Boost up to 4.0GHz) with 6MB shared L3 cache.
so yes quite possible you have 8 cpu threads working at Turbo Boost up to 3.7Ghz to 4.0Ghz which would be faster than Linode's 8GB 6 cpu threads at Turbo Boost of 3.6Ghz for single threaded work loads
also MacBook's might be with PCI-E SSD storage which would be faster than Linode's SSD offering so if your work loads touch the disk then can make a difference there too.
App – VPN was a mistake. I meant VPS. No VPN involved. Application uses Ruby Sequel ORM backed by SQLite. App traverses a tree, starting at root, and for example, builds an XML representation of tree. This is simple stuff, get object, parse attribute values into appropriate string, feed XML builder (which is just building a big string). Tree is composed of different types of objects (not that it should really matter). No caching involved.
Please see my thread here for the experience that I had
(whoops, just realized this is an older thread)