41554 blogs · [ { "id": "01a087cb-22ac-724e-b7b8-551432977f77", "title": "How Inlined Code Makes For Confusing Profiles", "url": "https://psy-lob-saw.blogspot.com/2018/07/how-inlined-code-confusing-profiles.html", "published_at": "2018-07-11T08:36:00+00:00" }, { "id": "01a087cb-22ad-7174-9b4f-a81d17cf785c", "title": "What a difference a JVM makes?", "url": "https://psy-lob-saw.blogspot.com/2018/01/what-difference-jvm-makes.html", "published_at": "2018-01-05T17:27:00+00:00" }, { "id": "01a087cb-22ad-7174-9b4f-a81d1866172d", "title": "Java Flame Graphs Introduction: Fire For Everyone!", "url": "https://psy-lob-saw.blogspot.com/2017/02/flamegraphs-intro-fire-for-everyone.html", "published_at": "2017-02-14T17:14:00+00:00" }, { "id": "01a087cb-22ad-7174-9b4f-a81d19660083", "title": "What do Atomic*::lazySet/Atomic*FieldUpdater::lazySet/Unsafe::putOrdered* actually mean?", "url": "https://psy-lob-saw.blogspot.com/2016/12/what-is-lazyset-putordered.html", "published_at": "2016-12-20T08:33:00+00:00" }, { "id": "01a087cb-22ad-7174-9b4f-a81d199faff1", "title": "Linked Array Queues, part 2: SPSC Benchmarks", "url": "https://psy-lob-saw.blogspot.com/2016/12/linked-array-queues-part-2-spsc.html", "published_at": "2016-12-13T09:36:00+00:00" }, { "id": "01a087cb-22ad-7174-9b4f-a81d19dfe4d9", "title": "Linked Array Queues, part 1: SPSC", "url": "https://psy-lob-saw.blogspot.com/2016/10/linked-array-queues-part-1-spsc.html", "published_at": "2016-10-24T06:57:00+00:00" }, { "id": "01a087cb-22ad-7174-9b4f-a81d19fab22e", "title": "4 Years Blog Anniversary", "url": "https://psy-lob-saw.blogspot.com/2016/10/4-years-blog-anniversary.html", "published_at": "2016-10-21T12:26:00+00:00" }, { "id": "01a087cb-22ad-7174-9b4f-a81d1a94608e", "title": "Fixing Coordinated Omission in Cassandra Stress", "url": "https://psy-lob-saw.blogspot.com/2016/07/fixing-co-in-cstress.html", "published_at": "2016-07-18T08:20:00+00:00" }, { "id": "01a087cb-22ad-7174-9b4f-a81d1aeafc2c", "title": "The Pros and Cons of AsyncGetCallTrace Profilers", "url": "https://psy-lob-saw.blogspot.com/2016/06/the-pros-and-cons-of-agct.html", "published_at": "2016-06-23T11:45:00+00:00" }, { "id": "01a087cb-22ad-7174-9b4f-a81d1bc03d06", "title": "GC 'Nepotism' And Linked Queues", "url": "https://psy-lob-saw.blogspot.com/2016/03/gc-nepotism-and-linked-queues.html", "published_at": "2016-03-21T10:16:00+00:00" }, { "id": "01a087cb-22ad-7174-9b4f-a81d1c71510c", "title": "Why (Most) Sampling Java Profilers Are Fucking Terrible", "url": "https://psy-lob-saw.blogspot.com/2016/02/why-most-sampling-java-profilers-are.html", "published_at": "2016-02-24T07:07:00+00:00" }, { "id": "01a087cb-22ad-7174-9b4f-a81d1ca6adc2", "title": "Wait For It: Counted/Uncounted loops, Safepoints and OSR Compilation", "url": "https://psy-lob-saw.blogspot.com/2016/02/wait-for-it-counteduncounted-loops.html", "published_at": "2016-02-01T07:56:00+00:00" }, { "id": "01a087cb-22ad-7174-9b4f-a81d1cb6db41", "title": "Safepoints: Meaning, Side Effects and Overheads", "url": "https://psy-lob-saw.blogspot.com/2015/12/safepoints.html", "published_at": "2015-12-14T11:49:00+00:00" }, { "id": "01a087cb-22ad-7174-9b4f-a81d1da1c7ac", "title": "Expanding The Queue interface: Relaxed Queue Access", "url": "https://psy-lob-saw.blogspot.com/2015/10/expanding-queue-interface-relaxed-queue.html", "published_at": "2015-10-19T08:46:00+00:00" }, { "id": "01a087cb-22ad-7174-9b4f-a81d1da81d2f", "title": "An extended Queue interface", "url": "https://psy-lob-saw.blogspot.com/2015/08/an-extended-queue-interface.html", "published_at": "2015-08-19T15:39:00+00:00" }, { "id": "01a087cb-22ad-7174-9b4f-a81d1e1edd95", "title": "JMH perfasm explained: Looking at False Sharing on Conditional Inlining", "url": "https://psy-lob-saw.blogspot.com/2015/07/jmh-perfasm.html", "published_at": "2015-07-27T07:26:00+00:00" }, { "id": "01a087cb-22ad-7174-9b4f-a81d1ea401ab", "title": "Object.equals, primitive '==', and Arrays.equals ain't equal", "url": "https://psy-lob-saw.blogspot.com/2015/05/objectequals-primitive-and-arraysequals.html", "published_at": "2015-05-22T05:35:00+00:00" }, { "id": "01a087cb-22ad-7174-9b4f-a81d1f1affd6", "title": "Degrees Of (Lock/Wait) Freedom", "url": "https://psy-lob-saw.blogspot.com/2015/05/degrees-of-lockwait-freedom.html", "published_at": "2015-05-19T19:33:00+00:00" }, { "id": "01a087cb-22ad-7174-9b4f-a81d1f7ab0fa", "title": "Porting Pitfalls: Turning D.Vyukov MPSC Wait-free queue into a j.u.Queue", "url": "https://psy-lob-saw.blogspot.com/2015/04/porting-dvyukov-mpsc.html", "published_at": "2015-04-22T09:51:00+00:00" }, { "id": "01a087cb-22ad-7174-9b4f-a81d1faaf62b", "title": "On Arrays.fill, Intrinsics, SuperWord and SIMD instructions", "url": "https://psy-lob-saw.blogspot.com/2015/04/on-arraysfill-intrinsics-superword-and.html", "published_at": "2015-04-13T09:45:00+00:00" }, { "id": "01a087cb-22ad-7174-9b4f-a81d20460b08", "title": "Correcting YCSB's Coordinated Omission problem", "url": "https://psy-lob-saw.blogspot.com/2015/03/fixing-ycsb-coordinated-omission.html", "published_at": "2015-03-11T10:45:00+00:00" }, { "id": "01a087cb-22ad-7174-9b4f-a81d20e6e767", "title": "HdrHistogram: A better latency capture method", "url": "https://psy-lob-saw.blogspot.com/2015/02/hdrhistogram-better-latency-capture.html", "published_at": "2015-02-16T10:28:00+00:00" }, { "id": "01a087cb-22ad-7174-9b4f-a81d21e614ec", "title": "MPMC: The Multi Multi Queue vs. CLQ", "url": "https://psy-lob-saw.blogspot.com/2015/01/mpmc-multi-multi-queue-vs-clq.html", "published_at": "2015-01-19T12:38:00+00:00" }, { "id": "01a087cb-22ad-7174-9b4f-a81d22672364", "title": "The Escape of ArrayList.iterator()", "url": "https://psy-lob-saw.blogspot.com/2014/12/the-escape-of-arraylistiterator.html", "published_at": "2014-12-01T15:38:00+00:00" }, { "id": "01a087cb-22ad-7174-9b4f-a81d228ac6c1", "title": "The Mythical Modulo Mask", "url": "https://psy-lob-saw.blogspot.com/2014/11/the-mythical-modulo-mask.html", "published_at": "2014-11-03T11:16:00+00:00" }, { "id": "01a0be00-7590-719d-82c7-47712b45dbea", "title": "The JVM Write Barrier - Card Marking", "url": "https://psy-lob-saw.blogspot.com/2014/10/the-jvm-write-barrier-card-marking.html", "published_at": "2014-10-29T09:31:00+00:00" }, { "id": "01a0be00-7590-719d-82c7-47712b5f11e8", "title": "Celebrating 2 years of blogging!", "url": "https://psy-lob-saw.blogspot.com/2014/10/celebrating-2-years-of-blogging.html", "published_at": "2014-10-28T08:45:00+00:00" }, { "id": "01a0be00-7590-719d-82c7-47712bec31f8", "title": "Disassembling a JMH Nano-Benchmark", "url": "https://psy-lob-saw.blogspot.com/2014/08/disassembling-jmh-nano-benchmark.html", "published_at": "2014-08-27T07:27:00+00:00" }, { "id": "01a0be00-7590-719d-82c7-47712bec94d4", "title": "The volatile read suprise", "url": "https://psy-lob-saw.blogspot.com/2014/08/the-volatile-read-suprise.html", "published_at": "2014-08-12T12:37:00+00:00" }, { "id": "01a0be00-7590-719d-82c7-47712cebe4a8", "title": "The many meanings of volatile read and write", "url": "https://psy-lob-saw.blogspot.com/2014/08/the-many-meanings-of-volatile-read-and.html", "published_at": "2014-08-08T15:57:00+00:00" }, { "id": "01a0be00-7590-719d-82c7-47712d2a7048", "title": "Poll me, maybe?", "url": "https://psy-lob-saw.blogspot.com/2014/07/poll-me-maybe.html", "published_at": "2014-07-28T07:51:00+00:00" }, { "id": "01a0be00-7590-719d-82c7-47712da93847", "title": "Concurrent Bugs: Size Matters", "url": "https://psy-lob-saw.blogspot.com/2014/07/concurrent-bugs-size-matters.html", "published_at": "2014-07-08T10:03:00+00:00" }, { "id": "01a0be00-7590-719d-82c7-47712e8248db", "title": "Notes on False Sharing", "url": "https://psy-lob-saw.blogspot.com/2014/06/notes-on-false-sharing.html", "published_at": "2014-06-26T13:23:00+00:00" }, { "id": "01a0be00-7590-719d-82c7-47712f491a1b", "title": "Advice for the concurrently confused: AtomicLong JDK7/8 vs. LongAdder", "url": "https://psy-lob-saw.blogspot.com/2014/06/jdk8-update-on-scalable-counters.html", "published_at": "2014-06-11T09:05:00+00:00" }, { "id": "01a0be00-7590-719d-82c7-47713007398d", "title": "Notes On Concurrent Ring Buffer Queue Mechanics", "url": "https://psy-lob-saw.blogspot.com/2014/04/notes-on-concurrent-ring-buffer-queue.html", "published_at": "2014-04-21T07:48:00+00:00" }, { "id": "01a0be00-7590-719d-82c7-4771300ccb5a", "title": "Java Object Layout: A Tale Of Confusion", "url": "https://psy-lob-saw.blogspot.com/2014/03/java-object-layout-tale-of-confusion.html", "published_at": "2014-03-28T12:27:00+00:00" }, { "id": "01a0be00-7590-719d-82c7-477130e2d7e0", "title": "Where is my safepoint?", "url": "https://psy-lob-saw.blogspot.com/2014/03/where-is-my-safepoint.html", "published_at": "2014-03-26T09:29:00+00:00" }, { "id": "01a0be00-7590-719d-82c7-477131c29fa5", "title": "Unsafe Pointer Chasing: Running With Scissors", "url": "https://psy-lob-saw.blogspot.com/2014/02/unsafe-pointer-chasing.html", "published_at": "2014-02-25T11:40:00+00:00" }, { "id": "01a0be00-7590-719d-82c7-477132ac4625", "title": "When I say final, I mean FINAL!", "url": "https://psy-lob-saw.blogspot.com/2014/02/when-i-say-final-i-mean-final.html", "published_at": "2014-02-13T00:45:00+00:00" }, { "id": "01a0be00-7590-719d-82c7-477133247e61", "title": "Picking the 2013 SPSC queue champion: benchmarking woes", "url": "https://psy-lob-saw.blogspot.com/2014/01/picking-2013-spsc-queue-champion.html", "published_at": "2014-01-28T07:25:00+00:00" }, { "id": "01a0be00-7590-719d-82c7-477133658948", "title": "JAQ: Using JMH to Benchmark SPSC Queues Latency - Part II", "url": "https://psy-lob-saw.blogspot.com/2014/01/jaq-spsc-latency-benchmarks2.html", "published_at": "2014-01-16T09:44:00+00:00" }, { "id": "01a0be00-7590-719d-82c7-4771341db3b8", "title": "JAQ: Using JMH to Benchmark SPSC Queues Latency - Part I", "url": "https://psy-lob-saw.blogspot.com/2013/12/jaq-spsc-latency-benchmarks1.html", "published_at": "2013-12-13T09:40:00+00:00" }, { "id": "01a0be00-7590-719d-82c7-477134f249fb", "title": "Announcing the JAQ(Java Alternative Queues) Project", "url": "https://psy-lob-saw.blogspot.com/2013/12/announce-jaq.html", "published_at": "2013-12-02T06:57:00+00:00" }, { "id": "01a0be00-7590-719d-82c7-477134fc756c", "title": "SPSC IV - A look at BQueue", "url": "https://psy-lob-saw.blogspot.com/2013/11/spsc-iv-look-at-bqueue.html", "published_at": "2013-11-11T08:21:00+00:00" }, { "id": "01a0be00-7590-719d-82c7-4771352ba757", "title": "A Lock Free Multi Producer Single Consumer Queue - Round 1", "url": "https://psy-lob-saw.blogspot.com/2013/10/lock-free-mpsc-1.html", "published_at": "2013-10-21T07:02:00+00:00" }, { "id": "01a0be00-7590-719d-82c7-477135bc9974", "title": "SPSC revisited part III - FastFlow + Sparse Data", "url": "https://psy-lob-saw.blogspot.com/2013/10/spsc-revisited-part-iii-fastflow-sparse.html", "published_at": "2013-10-07T07:29:00+00:00" }, { "id": "01a0be00-7590-719d-82c7-477136187471", "title": "Diving Deeper into Cache Coherency", "url": "https://psy-lob-saw.blogspot.com/2013/09/diving-deeper-into-cache-coherency.html", "published_at": "2013-09-15T08:52:00+00:00" }, { "id": "01a0be00-7590-719d-82c7-477136486fe1", "title": "JMM Cookbook Footnote: NOOP Memory Barriers on x86 are NOT FREE", "url": "https://psy-lob-saw.blogspot.com/2013/08/memory-barriers-are-not-free.html", "published_at": "2013-08-06T07:34:00+00:00" }, { "id": "01a0be00-7590-719d-82c7-477136709f20", "title": "Atomicity of Unaligned Memory Access in Java", "url": "https://psy-lob-saw.blogspot.com/2013/07/atomicity-of-unaligned-memory-access-in.html", "published_at": "2013-07-29T16:24:00+00:00" }, { "id": "01a0be00-7590-719d-82c7-4771371d960b", "title": "Java Concurrency Torture Update: Don't Stress", "url": "https://psy-lob-saw.blogspot.com/2013/07/java-concurrency-torture-update-dont.html", "published_at": "2013-07-24T21:01:00+00:00" }, { "id": "01a0be08-f0de-7376-b527-0dc9481873cd", "title": "SPSC Revisited - part II: Floating vs Inlined Counters", "url": "https://psy-lob-saw.blogspot.com/2013/07/spsc-revisited-part-ii-floating-vs.html", "published_at": "2013-07-23T06:59:00+00:00" }, { "id": "01a0be08-f0de-7376-b527-0dc9482fb3da", "title": "Single Producer Single Consumer Queue Revisited: An empiricist tale - part I", "url": "https://psy-lob-saw.blogspot.com/2013/07/single-producer-single-consumer-queue.html", "published_at": "2013-07-15T11:08:00+00:00" }, { "id": "01a0be08-f0de-7376-b527-0dc9488e541a", "title": "A Java Ping Buffet", "url": "https://psy-lob-saw.blogspot.com/2013/07/a-java-ping-buffet.html", "published_at": "2013-07-01T07:08:00+00:00" }, { "id": "01a0be08-f0de-7376-b527-0dc948e4836e", "title": "Java Concurrent Counters By Numbers", "url": "https://psy-lob-saw.blogspot.com/2013/06/java-concurrent-counters-by-numbers.html", "published_at": "2013-06-21T08:16:00+00:00" }, { "id": "01a0be08-f0de-7376-b527-0dc94954c266", "title": "Know Thy Java Object Memory Layout", "url": "https://psy-lob-saw.blogspot.com/2013/05/know-thy-java-object-memory-layout.html", "published_at": "2013-05-21T07:36:00+00:00" }, { "id": "01a0be08-f0de-7376-b527-0dc9497b70d0", "title": "Using JMH to Benchmark Multi-Threaded Code", "url": "https://psy-lob-saw.blogspot.com/2013/05/using-jmh-to-benchmark-multi-threaded.html", "published_at": "2013-05-15T18:37:00+00:00" }, { "id": "01a0be08-f0de-7376-b527-0dc94a0ca2c2", "title": "Writing Java Micro Benchmarks with JMH: Juicy", "url": "https://psy-lob-saw.blogspot.com/2013/04/writing-java-micro-benchmarks-with-jmh.html", "published_at": "2013-04-28T21:41:00+00:00" }, { "id": "01a0be08-f0de-7376-b527-0dc94acd04ec", "title": "135 Million messages a second between processes in pure Java", "url": "https://psy-lob-saw.blogspot.com/2013/04/lock-free-ipc-queue.html", "published_at": "2013-04-07T22:37:00+00:00" }, { "id": "01a0be08-f0de-7376-b527-0dc94acdd145", "title": "Single Producer/Consumer lock free Queue step by step", "url": "https://psy-lob-saw.blogspot.com/2013/03/single-producerconsumer-lock-free-queue.html", "published_at": "2013-03-17T23:09:00+00:00" }, { "id": "01a0be08-f0de-7376-b527-0dc94b793b68", "title": "Merging Queue, ArrayDeque, and Suzie Q", "url": "https://psy-lob-saw.blogspot.com/2013/03/merging-queue-arraydeque-and-suzie-q.html", "published_at": "2013-03-06T22:06:00+00:00" }, { "id": "01a0be08-f0de-7376-b527-0dc94bb6ed72", "title": "Alignment, Concurrency and Torture (x86)", "url": "https://psy-lob-saw.blogspot.com/2013/02/alignment-concurrency-and-torture-x86.html", "published_at": "2013-02-12T21:40:00+00:00" }, { "id": "01a0be08-f0de-7376-b527-0dc94ca7314f", "title": "Experimentation Notes: Java Print Assembly", "url": "https://psy-lob-saw.blogspot.com/2013/01/java-print-assembly.html", "published_at": "2013-01-28T17:13:00+00:00" }, { "id": "01a0be08-f0de-7376-b527-0dc94d18c4d6", "title": "Using Caliper for writing Micro Benchmarks", "url": "https://psy-lob-saw.blogspot.com/2013/01/using-caliper-for-writing-micro-benchmarks.html", "published_at": "2013-01-21T22:14:00+00:00" }, { "id": "01a0be08-f0de-7376-b527-0dc94d5e65d3", "title": "Direct Memory Alignment in Java", "url": "https://psy-lob-saw.blogspot.com/2013/01/direct-memory-alignment-in-java.html", "published_at": "2013-01-06T11:19:00+00:00" }, { "id": "01a0be08-f0de-7376-b527-0dc94dcca333", "title": "Java ping: a performance baseline utility", "url": "https://psy-lob-saw.blogspot.com/2012/12/java-ping-performance-baseline-utility.html", "published_at": "2012-12-20T13:18:00+00:00" }, { "id": "01a0be08-f0df-727a-8f62-13d94c81db0a", "title": "Atomic*.lazySet is a performance win for single writers", "url": "https://psy-lob-saw.blogspot.com/2012/12/atomiclazyset-is-performance-win-for.html", "published_at": "2012-12-13T15:00:00+00:00" }, { "id": "01a0be08-f0df-727a-8f62-13d94cba4fe2", "title": "Experimentation Notes: on herding processes and CPUs", "url": "https://psy-lob-saw.blogspot.com/2012/12/notes-on-herding-processes-and-cpus.html", "published_at": "2012-12-05T18:24:00+00:00" }, { "id": "01a0be08-f0df-727a-8f62-13d94d0003b7", "title": "Encode UTF-8 String to a ByteBuffer - faster", "url": "https://psy-lob-saw.blogspot.com/2012/12/encode-utf-8-string-to-bytebuffer-faster.html", "published_at": "2012-12-03T15:56:00+00:00" }, { "id": "01a0be08-f0df-727a-8f62-13d94d0ec075", "title": "Breaking String encapsulation using Unsafe", "url": "https://psy-lob-saw.blogspot.com/2012/10/breaking-string-encapsulation-using.html", "published_at": "2012-10-31T17:55:00+00:00" }, { "id": "01a0be08-f0df-727a-8f62-13d94d1f4dab", "title": "Java Intrinsics are not JNI calls", "url": "https://psy-lob-saw.blogspot.com/2012/10/java-intrinsics-are-not-jni-calls.html", "published_at": "2012-10-25T13:34:00+00:00" } ] posts Claim your blog
Back to Psychosomatic, Lobotomy, Saw
Blog · corpus.blog/blogs/psy-lob-saw.blogspot.com/posts

Psychosomatic, Lobotomy, Saw

psy-lob-saw.blogspot.com

2018

2017

2016

2015

2014

2013

2012