background preloader

Multi-core - Concurrent programming

Facebook Twitter

New Patent Around Race Condition Fixing. Today, Replay Solutions announced its success in obtaining a US patent around their software's ability to reproduce and fix race conditions. Race conditions are a big problem for developers working on multi-threaded applications. Voke Inc. analyst firm founder Theresa Lanowitz says that the software gaming industry and embedded systems vendors have addressed race conditions, but now enterprise developers have a growing need to address them as well. Race conditions are a very common defect type in multi-threaded Java apps, and one of the toughest classes of software problems to reproduce and fix. With the growth in demand for virtualization and cloud computing software, as well as the rise of multi-core processors, multi-threaded applications are critical to the future of computing. Replay Solution's newly-patented tech is based on more than six years of research and identifies and resolves race conditions.

Replay Solutions likens their tool to a "DVR for enterprise Java applications. " Deopli whitepaper.pdf. The Downfall of Imperative Programming | FP Complete. Imperative programming is in my bloodstream. I've been a C++ programmer for most of my life. I wrote a book about C++. I helped Andrei and Walter design an imperative language D. If I dabbled in functional programming, it was mostly to make my imperative programs better. Over the years I also developed a real passion for concurrent programming. There is no doubt in my mind, and most experts agree, that concurrency and parallelism are the future of programming. I have recently attended the Multicore DevCon in San Jose, which was part of a big DesignWest Expo.

Remember the times when progress in software was driven by adding abstraction layers between programming languages and the details of processor architectures? I may surprise you that the state of the art in parallel programming is OpenMP and OpenCL. But maybe this is just a temporary state of affairs and there is ongoing work to ratchet the levels of abstraction back to where they'd been. Here's the key insight: Amdahl's Law in the Multicore Era. Parallel Programming Tutorial Series - Part 1 - Basics. Dual-Core Processors Powered 20% of Smartphones in 2011. "Multi-core Mania": A Rebuttal. The Simple-Talk newsletter is a monthly e-zine that the folks over at Red Gate Software (makers of some pretty cool toys, including their ANTS Profiler, and recent inheritors of the Reflector utility legacy) produce, usually to good effect.

But this month carried with it an interesting editorial piece, which I reproduce in its entirety here: When the market is slack, nothing succeeds better at tightening it up than promoting serial group-panic within the community. As an example of this, a wave of multi-core panic spread across the Internet about 18 months ago. IT organizations, it was said, urgently had to improve application performance by an order of magnitude in order to cope with rising demand. My hope is that this newsletter, sent on April 1st, was intended to be a joke.

And frankly, I think it’s all crap. It's dangerously ostrichian in nature—it encourages developers to simply bury their heads in the sand and ignore the freight train that's coming their way. To begin ... Wow.