Java SE 8 was officially released yesterday (March 18th) and given the fact that Java 7 was released back in 2012, there are definitely lots of updates and new features. These updates include improvements to the Java language itself, Java security, Java tools and more. Although a lot of these updates are interesting and importantContinue reading “What’s New for Concurrency in Java SE 8?”
On March 7th of last year I attended an OCE event called the “AMD HSA and Heterogeneous Computing Research Showcase.” I recently came across my notes from the event and I thought a few quotes from the keynote speaker, Phil Rogers from AMD Canada, were worth sharing. Phil Rogers on AMD’s commitment to open industryContinue reading “Interesting Quotes from AMD Canada Event”
With the increase in multicore processors there has been an increase in demand for concurrent programming and an increase in books and resources that focus on programming with concurrency. Below I will outline some of the books on my own bookshelf that have been useful.
FindBugs – works on Java. In the list of bugs detected all of the “Multithreaded correctness” bugs are relevant to concurrency. Command-line interface or eclipse plugin (eclipse plugin update site:http://findbugs.cs.umd.edu/eclipse/) Lint – a UNIX tool for C JLint – a Java version of Lint that is available as stand alone or eclipse plugin (eclipse plugin update site:http://www.jutils.com/eclipse-update) ParasoftContinue reading “Static Analysis Tools for Concurrency”
“…humans are quickly overwhelmed by concurrency and find it much more difficult to reason about concurrent than sequential code. Even careful people miss possible interleavings…” – Herb Sutter & James Larus, Microsoft. Software and the concurrency revolution. Queue, 3(7):54–62, 2005.
As the use of concurrency in software increases there are more software testing tools being developed in both industry an academia. Below is a fairly comprehensive list of tools (mainly for Java): ConTest – IBM concurrent testing tool that inserts random delays into Java bytecode ConAn – a thread testing tool for Java CHESS – a Microsoft toolContinue reading “Software Testing Tools for Concurrency”