tag:blogger.com,1999:blog-70832786433797998912023-06-20T06:08:48.435-07:00It's All RelativePerformance MindedJean-Philippe Bempelhttp://www.blogger.com/profile/06767056355047105540noreply@blogger.comBlogger25125tag:blogger.com,1999:blog-7083278643379799891.post-85084636534161723312016-03-07T13:19:00.001-08:002020-06-09T14:02:41.784-07:00CompileCommand JVM option<body onload="window.location.href = 'https://jpbempel.github.io/2016/03/16/compilecommand-jvm-option.html';">
<a href="https://jpbempel.github.io/2016/03/16/compilecommand-jvm-option.html">compilecommand</a>
</body>Jean-Philippe Bempelhttp://www.blogger.com/profile/06767056355047105540noreply@blogger.com0tag:blogger.com,1999:blog-7083278643379799891.post-55966935582160543062015-12-30T06:28:00.000-08:002020-06-09T14:02:07.950-07:00PrintAssembly output explained!<body onload="window.location.href = 'https://jpbempel.github.io/2015/12/30/printassembly-output-explained.html';">
<a href="https://jpbempel.github.io/2015/12/30/printassembly-output-explained.html">printassembly</a>
</body>Jean-Philippe Bempelhttp://www.blogger.com/profile/06767056355047105540noreply@blogger.com1tag:blogger.com,1999:blog-7083278643379799891.post-19668604754216338452015-10-14T23:54:00.000-07:002020-06-09T14:01:26.222-07:00assignment-with-use or inline assignment<body onload="window.location.href = 'https://jpbempel.github.io/2015/10/14/assignment-with-use-or-inline-assignment.html';">
<a href="https://jpbempel.github.io/2015/10/14/assignment-with-use-or-inline-assignment.html">assignments</a>
</body>Jean-Philippe Bempelhttp://www.blogger.com/profile/06767056355047105540noreply@blogger.com0tag:blogger.com,1999:blog-7083278643379799891.post-66490187802489515012015-09-21T05:33:00.001-07:002020-06-09T14:00:49.959-07:00Yoda conditions<body onload="window.location.href = 'https://jpbempel.github.io/2015/09/21/yoda-conditions.html';">
<a href="https://jpbempel.github.io/2015/09/21/yoda-conditions.html">yoda</a>
</body>Jean-Philippe Bempelhttp://www.blogger.com/profile/06767056355047105540noreply@blogger.com0tag:blogger.com,1999:blog-7083278643379799891.post-49876951726321129182015-09-14T00:45:00.000-07:002020-06-09T14:00:03.502-07:00Why Bios Settings matter (and not size)!<body onload="window.location.href = 'https://jpbempel.github.io/2015/09/14/why-bios-settings-matters-and-not-size.html';">
<a href="https://jpbempel.github.io/2015/09/14/why-bios-settings-matters-and-not-size.html">bios</a>
</body>Jean-Philippe Bempelhttp://www.blogger.com/profile/06767056355047105540noreply@blogger.com0tag:blogger.com,1999:blog-7083278643379799891.post-30385214548522040292015-08-28T00:34:00.001-07:002020-06-09T13:59:23.736-07:00Ordered Scheduler<body onload="window.location.href = 'https://jpbempel.github.io/2015/08/28/ordered-scheduler.html';">
<a href="https://jpbempel.github.io/2015/08/28/ordered-scheduler.html">ordered scheduler</a>
</body>Jean-Philippe Bempelhttp://www.blogger.com/profile/06767056355047105540noreply@blogger.com0tag:blogger.com,1999:blog-7083278643379799891.post-33957442474069355862015-07-13T04:28:00.000-07:002020-06-09T13:58:40.749-07:00Notify... oh, wait! I have a signal.<body onload="window.location.href = 'https://jpbempel.github.io/2015/07/13/notify-oh-wait-i-have-a-signal.html';">
<a href="https://jpbempel.github.io/2015/07/13/notify-oh-wait-i-have-a-signal.html">notify</a>
</body>Jean-Philippe Bempelhttp://www.blogger.com/profile/06767056355047105540noreply@blogger.com0tag:blogger.com,1999:blog-7083278643379799891.post-79234219289569305292015-07-07T05:48:00.000-07:002020-06-09T13:58:00.552-07:00WhiteBox API<body onload="window.location.href = 'https://jpbempel.github.io/2015/07/07/whitebox-api.html';">
<a href="https://jpbempel.github.io/2015/07/07/whitebox-api.html">whitebox</a>
</body>Jean-Philippe Bempelhttp://www.blogger.com/profile/06767056355047105540noreply@blogger.com0tag:blogger.com,1999:blog-7083278643379799891.post-43898887599560141932015-05-26T13:06:00.000-07:002020-06-09T13:57:22.014-07:00Volatile and memory barriers<body onload="window.location.href = 'https://jpbempel.github.io/2015/05/26/volatile-and-memory-barriers.html';">
<a href="https://jpbempel.github.io/2015/05/26/volatile-and-memory-barriers.html">membar</a>
</body>Jean-Philippe Bempelhttp://www.blogger.com/profile/06767056355047105540noreply@blogger.com0tag:blogger.com,1999:blog-7083278643379799891.post-73282042327928368582015-05-23T06:18:00.000-07:002020-06-09T13:56:40.956-07:00Measuring contention on locks<body onload="window.location.href = 'https://jpbempel.github.io/2014/05/23/measuring-contention-on-locks.html';">
<a href="https://jpbempel.github.io/2014/05/23/measuring-contention-on-locks.html">contention</a>
</body>Jean-Philippe Bempelhttp://www.blogger.com/profile/06767056355047105540noreply@blogger.com0tag:blogger.com,1999:blog-7083278643379799891.post-8485537159881522852014-05-09T05:51:00.001-07:002020-06-09T13:56:03.506-07:00Branches: I have lost my path!<body onload="window.location.href = 'https://jpbempel.github.io/2014/05/09/branches-i-have-lost-my-path.html';">
<a href="https://jpbempel.github.io/2014/05/09/branches-i-have-lost-my-path.html">branches</a>
</body>Jean-Philippe Bempelhttp://www.blogger.com/profile/06767056355047105540noreply@blogger.com0tag:blogger.com,1999:blog-7083278643379799891.post-5888760355983778262013-12-17T04:37:00.004-08:002020-06-09T13:55:24.531-07:00ArrayList vs LinkedList<body onload="window.location.href = 'https://jpbempel.github.io/2013/12/17/arraylist-vs-linkedlist.html';">
<a href="https://jpbempel.github.io/2013/12/17/arraylist-vs-linkedlist.html">List</a>
</body>Jean-Philippe Bempelhttp://www.blogger.com/profile/06767056355047105540noreply@blogger.com0tag:blogger.com,1999:blog-7083278643379799891.post-32912294938768469732013-10-30T14:20:00.000-07:002020-06-09T13:54:46.123-07:00Hardware Performance Counters: atomic vs standard incrementation<body onload="window.location.href = 'https://jpbempel.github.io/2013/10/30/hardware-performance-counters-atomic-vs-standard-incrementation.html';">
<a href="https://jpbempel.github.io/2013/10/30/hardware-performance-counters-atomic-vs-standard-incrementation.html">incrementation</a>
</body>Jean-Philippe Bempelhttp://www.blogger.com/profile/06767056355047105540noreply@blogger.com0tag:blogger.com,1999:blog-7083278643379799891.post-43601046284686783472013-09-03T13:14:00.001-07:002020-06-09T13:54:04.309-07:00Null check elimination<body onload="window.location.href = 'https://jpbempel.github.io/2013/09/03/null-check-elimination.html';">
<a href="https://jpbempel.github.io/2013/09/03/null-check-elimination.html">Null check</a>
</body>Jean-Philippe Bempelhttp://www.blogger.com/profile/06767056355047105540noreply@blogger.com0tag:blogger.com,1999:blog-7083278643379799891.post-1112570912886326632013-08-02T12:26:00.000-07:002020-06-09T13:53:20.291-07:00Hardware performance counters<body onload="window.location.href = 'https://jpbempel.github.io/2013/08/02/hardware-performance-counters.html';">
<a href="https://jpbempel.github.io/2013/08/02/hardware-performance-counters.html">Performance counters</a>
</body>Jean-Philippe Bempelhttp://www.blogger.com/profile/06767056355047105540noreply@blogger.com2tag:blogger.com,1999:blog-7083278643379799891.post-88020550913092568052013-07-02T12:50:00.002-07:002020-06-09T13:52:36.056-07:00How to build hsdis-amd64.dll<body onload="window.location.href = 'https://jpbempel.github.io/2013/07/02/how-to-build-hsdis-amd64-dll.html';">
<a href="https://jpbempel.github.io/2013/07/02/how-to-build-hsdis-amd64-dll.html">hsdis</a>
</body>Jean-Philippe Bempelhttp://www.blogger.com/profile/06767056355047105540noreply@blogger.com0tag:blogger.com,1999:blog-7083278643379799891.post-23464511194074246142013-06-16T01:31:00.000-07:002020-06-09T13:52:01.029-07:00Is it really how JVM optimizes the code?<body onload="window.location.href = 'https://jpbempel.github.io/2013/06/16/is-it-really-how-jvm-optimizes-code.html';">
<a href="https://jpbempel.github.io/2013/06/16/is-it-really-how-jvm-optimizes-code.html">optimize</a>
</body>Jean-Philippe Bempelhttp://www.blogger.com/profile/06767056355047105540noreply@blogger.com0tag:blogger.com,1999:blog-7083278643379799891.post-77205559204109315182013-04-03T13:54:00.003-07:002020-06-09T13:51:11.272-07:00CompileThreshold is relative!<body onload="window.location.href = 'https://jpbempel.github.io/2013/04/03/compilethreshold-is-relative.html';">
<a href="https://jpbempel.github.io/2013/04/03/compilethreshold-is-relative.html">CompileThreshold</a>
</body>Jean-Philippe Bempelhttp://www.blogger.com/profile/06767056355047105540noreply@blogger.com0tag:blogger.com,1999:blog-7083278643379799891.post-18975265161458108602013-03-25T14:32:00.001-07:002020-06-09T13:50:36.381-07:00Lock Lock Lock: Enter!<body onload="window.location.href = 'https://jpbempel.github.io/2013/03/25/lock-lock-lock-enter.html';">
<a href="https://jpbempel.github.io/2013/03/25/lock-lock-lock-enter.html">Lock</a>
</body>Jean-Philippe Bempelhttp://www.blogger.com/profile/06767056355047105540noreply@blogger.com0tag:blogger.com,1999:blog-7083278643379799891.post-27021288586966338112013-03-04T13:34:00.000-08:002020-06-09T13:49:51.727-07:00Safety First: Safepoints<body onload="window.location.href = 'https://jpbempel.github.io/2013/03/04/safety-first-safepoints.html';">
<a href="https://jpbempel.github.io/2013/03/04/safety-first-safepoints.html">Safepoints</a>
</body>Jean-Philippe Bempelhttp://www.blogger.com/profile/06767056355047105540noreply@blogger.com1tag:blogger.com,1999:blog-7083278643379799891.post-72565778056303453222012-11-15T13:55:00.001-08:002020-06-09T13:49:01.462-07:00The useful JVM options<body onload="window.location.href = 'https://jpbempel.github.io/2012/11/15/the-useful-jvm-options.html';">
<a href="https://jpbempel.github.io/2012/11/15/the-useful-jvm-options.html">JVM options</a>
</body>Jean-Philippe Bempelhttp://www.blogger.com/profile/06767056355047105540noreply@blogger.com1tag:blogger.com,1999:blog-7083278643379799891.post-41953851439348954822012-10-24T00:13:00.000-07:002020-06-09T13:48:26.239-07:00Virtual Call 911<body onload="window.location.href = 'https://jpbempel.github.io/2012/10/24/virtual-call-911.html';">
<a href="https://jpbempel.github.io/2012/10/24/virtual-call-911.html">Virtual Call</a>
</body>Jean-Philippe Bempelhttp://www.blogger.com/profile/06767056355047105540noreply@blogger.com0tag:blogger.com,1999:blog-7083278643379799891.post-24342369857657903022012-10-16T13:59:00.000-07:002020-06-09T13:47:20.471-07:00How to print disassembly from JIT code ?<body onload="window.location.href = 'https://jpbempel.github.io/2012/10/16/how-to-print-disassembly-from-JIT-code.html';">
<a href="https://jpbempel.github.io/2012/10/16/how-to-print-disassembly-from-JIT-code.html">JIT code</a>
</body>Jean-Philippe Bempelhttp://www.blogger.com/profile/06767056355047105540noreply@blogger.com0tag:blogger.com,1999:blog-7083278643379799891.post-46013679590956910182012-10-09T13:10:00.001-07:002020-06-09T13:45:06.194-07:00Volatile<body onload="window.location.href = 'https://jpbempel.github.io/2012/10/09/volatile.html';">
<a href="https://jpbempel.github.io/2012/10/09/volatile.html">Volatile</a>
</body>Jean-Philippe Bempelhttp://www.blogger.com/profile/06767056355047105540noreply@blogger.com0tag:blogger.com,1999:blog-7083278643379799891.post-20053980581109923972012-10-03T13:36:00.000-07:002012-10-03T13:54:25.690-07:00IntroductionThe idea of this blog came from multiple discussions I had with my colleagues about how HotSpot JIT compiler is able to optimize some Java code and how good is the native code produced. My findings may be worth to share, so here they are !<br />
<br />
I will also post about any performance topics on Java, C#/.NET, OS or hardware.<br />
<br />
Let's rock !<br />
<br />Jean-Philippe Bempelhttp://www.blogger.com/profile/06767056355047105540noreply@blogger.com0