BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Concurrency Content on InfoQ

  • Article: Do Java 6 threading optimizations actually work?

    Features like biased locking, lock coarsening, lock elision by escape analysis and adaptive spin locking are all designed to increase concurrency by allowing more effective sharing amongst application threads. But do they actually work? In this two part article, Jeroen Borgers explores these features and attempt to answer the performance question with the aid of a single threaded benchmark.

  • Presentation: Erlang - software for a concurrent world

    We get more and more cores in our CPUs, but does our software run linearly faster? In most cases - no. We've hit a trend change when it comes to faster CPUs. We'll get more and more cores, but each core will be slower as the number of cores increase. In his talk, Joe Armstrong introduces Erlang and the ideas of Concurrent Oriented Programming which is one way to solve the problem.

  • Concurrency Presentation Scheduled for the PDC Pre-Conference Sessions

    Microsoft's The Parallel Computing Platform team will be presenting on Concurrent, Multi-core Programming for Windows and .NET during the PDC pre-conference Sessions. These sessions are day-long, in-depth presentations on specific topics. Held the Sunday before the main conference, a separate registration is required.

  • Article: Scalability Principles

    At the simplest level, scalability is about doing more of something. This could be responding to more user requests, executing more work or handling more data. This article presents some principles and guidelines for building scalable software systems.

  • JavaOne: Garbage First

    In a JavaOne presentation, Sun Microsystems’ Tony Printezis provided more details on Garbage First, a replacement for the CMS garbage collector particularly targeted at long running server applications.

  • Parallel Processing Framework JPPF 1.1 Supports TCP Multiplexer and JMX Monitoring

    The latest version of JPPF, a java based open source parallel processing framework, includes a networking tool called TCP port multiplexer to enable JPPF work in secure firewall environments. JPPF team released the version 1.1 of the framework which also includes JMX based node monitoring and management features.

  • Are Special Purpose Chips an Answer to the Multicore Crisis?

    Adapting to multicore paradigm is one of the emerging challenges in the software industry. What if the solution lays at the hardware level? Bob Warfield suggests that creation of chips optimized for running specific virtual machines could reduce the gap between the potential performance of processors and the actual capacity of software to take advantage from it.

  • Parallelism with Fork/Join in Java 7

    As the number of processor cores available on modern hardware increases, it's becoming ever more important for developers to develop in ways that take advantage of the new hardware. The Fork/Join library in Java 7 helps solve this problem.

  • Software Transactions: A Programming Language Perspective

    Erlang has recently generated a lot of interest as a language that can deal both efficiently and elegantly with concurrency. In particular, there is no shared memory between "process" instances which only communicate via asynchronous messages. Nevertheless, Shared Memory Concurrency remains an intense research subject especially for multicore applications.

  • Common Ruby MVM API research kicked off

    Research on the topic of Multiple VM (MVM) Ruby will be conducted at the University of Tokyo together with Sun's JRuby team. The work will investigate issues such as communication between VMs and a common API across all Ruby implementations, with solutions provided initially for Ruby and JRuby.

  • Rubinius adds Multi-VM support

    Rubinius adds a new feature called "Multi-VM", which allows to run multiple Ruby VMs inside an OS process. We talked with Evan Phoenix of the Rubinius project about the benefits and implementation of this feature.

  • Consistency vs. availability: eventual consistency by Werner Vogels

    Until the mid nineties, achieving distribution transparency and data consistency has often been the priority. As large Internet systems started to arise, availability became another important concern to be taken into consideration. Werner Vogels outlines some principles, abstractions and consistency/availability trade-offs related to large scale data replication with focus on eventual consistency.

  • Parallel Processing Framework JPPF offers Load Balancing, Failover and J2EE Integration

    Java Parallel Processing Framework (JPPF) project team recently announced the first Release Candidate (RC1) of Version 1.0 of the product. JPPF is an open source grid computing framework that can be used to run Java applications in parallel in a distributed execution environment. JPPF team is planning on Version 1.0 GA release next month.

  • Confusing unit-of-work with threads

    Most server-side applications and many desktop applications contains data that is tied to a particular task that’s being executed. A common solution is to keep that kind of data in thread-local storage; to keep the data in variables bound to the executing thread. Convenient, but a practice based on a faulty assumption.

  • Stephan T. Lavavej on the future of C++

    On the Microsoft Visual C++ blog Stephan T. Lavavej, a library developer, speculates about the future of the C++ language.

BT