Presentation: "Dataflow Programming: A scalable data-centric approach to parallelism"

Time: Wednesday 16:50 - 17:50

Location: Concordia Room

Abstract:

There are two major drivers behind the need to embrace parallelism: the dramatic shift to multicore CPUs, and the striking increase in the amount of data being processed by the applications that run our enterprises and public agencies. These two factors must be addressed by any approach to parallelism or we will find ourselves falling short of addressing the very real crisis that is upon us. While there are a few data-centric approaches that have generated interest including MapReduce, dataflow programming is arguably the easiest parallel strategy to adopt for the millions of developers trained in serial programming. This presentation introduces attendees to dataflow programming concepts and demonstrates how an efficient implementation can leverage the inherent parallelism that exists in multicore CPUs to provide a scalable and high-throughput application capable of processing vast amounts of data.

Jim Falgout, Pervasive DataRush Chief Technologist

 Jim  Falgout

As Chief Technologist for Pervasive DataRush, Jim Falgout is responsible for setting innovative design principles that guide Pervasive engineering teams as they develop new releases and products for partners and customers. Jim is responsible for the architectural design of Pervasive DataRushTM, a 100% Java dataflow platform that allows developers to quickly build highly parallel, data-intensive applications that take full advantage of multicore, SMP platforms (see www.pervasivedatarush.com).

Jim has nearly 20 years of large-scale software development experience in roles including development manager, software architect, and principal engineer. His areas of expertise include requirements analysis, architecture development, object and data modeling, performance analysis and planning, and algorithm and processing development with particular depth in Java languages and frameworks.

Prior to joining Pervasive, Jim was Software Development Manager for NexQL, a company focused on hardware acceleration for database systems. Jim also served as Director of Software Architecture for Voyence, which created a product for managing IP networks; as Software Development Principal for Net Perceptions/KD1, which designed software to analyze point-of-sale data for large retailers; and as Senior Software Engineer for Convex Computer. Jim also held senior technical positions with Sequel Systems and E-Systems.

Jim holds a B.Sc. (Cum Laude) in Computer Science from Nicholls State University. Jim is an experienced public speaker, including presentations to user groups, client conferences and IEEE working groups. Jim is active in the Java development community, he presented “Unleashing the Power of Multi- Core Processors: Scalable Data Processing in Java Technology” at JavaOne and has authored articles including “Let the Data Flow” in the July 2007 issue of Java Developers Journal (co-authored with Matt Walker) and “Prince of the Pipeline: Multicore Testing Techniques can Elevate a Test Team from Citizens to App Performance Royalty” in the October 2007 issue of Software Test and Performance.