Slashdot Mirror


Scalable Nonblocking Data Structures

An anonymous reader writes "InfoQ has an interesting writeup of Dr. Cliff Click's work on developing highly concurrent data structures for use on the Azul hardware (which is in production with 768 cores), supporting 700+ hardware threads in Java. The basic idea is to use a new coding style that involves a large array to hold the data (allowing scalable parallel access), atomic update on those array words, and a finite-state machine built from the atomic update and logically replicated per array word. The end result is a coding style that has allowed Click to build 2.5 lock-free data structures that also scale remarkably well."

16 of 216 comments (clear)

  1. 768 Cores? by Shadow+Wrought · · Score: 2, Funny
    Call me a CPU luddite, but does this mean that I can lose 768 games of Solataire simultaneously?

    --
    If brevity is the soul of wit, then how does one explain Twitter?
    1. Re:768 Cores? by jlechem · · Score: 3, Funny

      Or better yet actually run Windows Vista. Zing!

      --
      Hold up, wait a minute, let me put some pimpin in it
  2. Re:Sounds great! by Linker3000 · · Score: 4, Funny

    1988? Atomic?

    Is this something to do with a Blondie tour?

    --
    AT&ROFLMAO
  3. Re:Sounds great! by moderatorrater · · Score: 4, Funny

    Before, data structures would only perform well in 50-100 threads. With this work, he has it up to over 700 threads, but it hasn't been load tested yet. There's a good chance that he's on the forefront of the next generation of data structures, there's a good chance that his work will be included in the java core (although that's not saying much considering).

  4. Re:Java???? by Anonymous Coward · · Score: 5, Funny

    700 threads in assembler? Why not use JAVA, actually optimize the hell out of the code, and get it down considerably. Or get a lot more done per thread.

    Or... is this just a way to avoid having to get the really, really good coders who are more costly than the burn-bags?

  5. Geek serendipity in a summary by ThreeGigs · · Score: 3, Funny

    and a finite-state machine built from the atomic update and logically replicated per array word.


    Now *that* is what I call geek speak.
  6. From the article: by Kingrames · · Score: 3, Funny

    "# A Finite State Machine (FSM) built from the atomic update and logically replicated per array word. The FSM supports array resize and is used to control writes."

    Clearly, the data structures have been touched by his noodly appendage.

    --
    If you can read this, I forgot to post anonymously.
  7. Re:Java???? by Reverend528 · · Score: 3, Funny

    Because the code is written faster in Java, runs as fast as C code can (because the JIT does an equivalent job
    Since when has writing code quickly ever been considered one of Java's strong points? Personally I'd take stdio over Java's alternative (file wrapped in a stream buffer wrapped in a buffered reader wrapped in an enigma) any day of the week.

    Sure, Java manages memory for you, but it's generally much easier to incorporate a garbage collector into C than it is to write java without file I/O.

  8. one per by spoonist · · Score: 2, Funny

    Azul hardware (which is in production with 768 cores), supporting 700+ hardware threads in Java

    Hmmm... one core per Java thread?

    That sounds about right for Java apps...

  9. Re:Google Talk by kestasjk · · Score: 2, Funny

    I wish I could call myself "Dr. Click" :-(

    --
    // MD_Update(&m,buf,j);
  10. Re:Sounds great! by Linker3000 · · Score: 3, Funny

    I hereby appoint you official summary explainer!

    Thanks

    --
    AT&ROFLMAO
  11. Re:Sounds great! by hey! · · Score: 4, Funny

    Which is great and all, but what we usually need is more of a summary executioner.

    --
    Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
  12. Re:why by tsalaroth · · Score: 2, Funny

    I, for one, welcome our fake Anonymous Coward Thread-count Overlords!

  13. Re:Java???? by nih · · Score: 1, Funny

    700 threads in JAVA? Why not use Brainfuck, actually optimize the hell out of...no wait, fs my head hurts now:(

    --
    I'm a rabbit startled by the headlights of life :(
  14. Theory Pong by nuzak · · Score: 2, Funny

    > Your turn.

    Catamorphisms. Linear Logic.

    Back to you :)

    --
    Done with slashdot, done with nerds, getting a life.
  15. Ping by Seferino · · Score: 2, Funny

    Amb. Calculus of constructions. Higher-order barbed bisimulation. Stochastic processes.
    And you're cheating with your signature :)