Specialized systems are  Inevitable  Already the norm  Practical.

Slides:



Advertisements
Similar presentations
EECS Electrical Engineering and Computer Sciences B ERKELEY P AR L AB P A R A L L E L C O M P U T I N G L A B O R A T O R Y EECS Electrical Engineering.
Advertisements

In Review JAVA C++ GUIs - Windows Webopedia.com.
Oracle Labs Graph Analytics Research Hassan Chafi Sr. Research Manager Oracle Labs Graph-TA 2/21/2014.
APARAPI Java™ platform’s ‘Write Once Run Anywhere’ ® now includes the GPU Gary Frost AMD PMTS Java Runtime Team.
GPU Virtualization Support in Cloud System Ching-Chi Lin Institute of Information Science, Academia Sinica Department of Computer Science and Information.
1 Lawrence Livermore National Laboratory By Chunhua (Leo) Liao, Stephen Guzik, Dan Quinlan A node-level programming model framework for exascale computing*
Life and Health Sciences Summary Report. “Bench to Bedside” coverage Participants with very broad spectrum of expertise bridging all scales –From molecule.
Big Data Management and Analytics Introduction Spring 2015 Dr. Latifur Khan 1.
Parallelization Technology v 0.2 Parallel-Developers Discussion 6/29/11.
Why static is bad! Hadoop Pregel MPI Shared cluster Today: static partitioningWant dynamic sharing.
INRIA - LaBRICompose Group Generative Programming from a DSL Viewpoint Charles Consel Compose Research Group LaBRI – INRIA-Futurs 2004.
1/18 CS 693/793 Lecture 09 Special Topics in Domain Specific Languages CS 693/793-1C Spring 2004 Mo, We, Fr 10:10 – 11:00 CH 430.
Java for High Performance Computing Jordi Garcia Almiñana 14 de Octubre de 1998 de la era post-internet.
1 New Architectures Need New Languages A triumph of optimism over experience! Ian Watson 3 rd July 2009.
GRAMPS Beyond Rendering Jeremy Sugerman 11 December 2009 PPL Retreat.
Trend towards Embedded Multiprocessors Popular Examples –Network processors (Intel, Motorola, etc.) –Graphics (NVIDIA) –Gaming (IBM, Sony, and Toshiba)
Contemporary Languages in Parallel Computing Raymond Hummel.
Compiler Design Nai-Wei Lin Department of Computer Science National Chung Cheng University.
Project Proposal (Title + Abstract) Due Wednesday, September 4, 2013.
Hossein Bastan Isfahan University of Technology 1/23.
October 26, 2006 Parallel Image Processing Programming and Architecture IST PhD Lunch Seminar Wouter Caarls Quantitative Imaging Group.
Bridging the chasm between MDE and the world of compilation Nondini Das 1.
Yu Sun 1, Zekai Demirezen 1, Marjan Mernik 2, Jeff Gray 1, Barret Bryant 1 1 Department of Computer and Information Sciences, University of Alabama at.
The Scala Programming Language
Chapter 1. Introduction.
Scripting Languages Intro Jan Stelovsky, ICS 215.
BY: ALI AJORIAN ISFAHAN UNIVERSITY OF TECHNOLOGY 2012 GPU Architecture 1.
By Arun Bhandari Course: HPC Date: 01/28/12. GPU (Graphics Processing Unit) High performance many core processors Only used to accelerate certain parts.
4.2.1 Programming Models Technology drivers – Node count, scale of parallelism within the node – Heterogeneity – Complex memory hierarchies – Failure rates.
George Michelogiannakis, Prof. William J. Dally Concurrent architecture & VLSI group Stanford University Elastic Buffer Flow Control for On-chip Networks.
A Little Language for Surveys: Constructing an Internal DSL in Ruby H. Conrad Cunningham Computer and Information Science University of Mississippi.
GPU Architecture and Programming
Keshav Pingali The University of Texas at Austin Specialization is for dodos.
GPUs: Overview of Architecture and Programming Options Lee Barford firstname dot lastname at gmail dot com.
Riga Technical University Department of System Theory and Design Usage of Multi-Agent Paradigm in Multi-Robot Systems Integration Assistant professor Egons.
OpenCL Programming James Perry EPCC The University of Edinburgh.
Internet of Things (Smart Grid) Storm Archival Storage – NOSQL like Hbase Streaming Processing (Iterative MapReduce) Batch Processing (Iterative MapReduce)
Datalayer Notebook Allows Data Scientists to Play with Big Data, Build Innovative Models, and Share Results Easily on Microsoft Azure MICROSOFT AZURE ISV.
1 CS145 Lecture 24 What’s next?. 2  What questions does Computer Science study?  Where is programming and Computer Science headed? –With special emphasis.
George Mason University Follow-up Courses. ECE Department MS in Electrical Engineering MS EE MS in Computer Engineering MS CpE COMMUNICATIONS & NETWORKING.
Contemporary Languages in Parallel Computing Raymond Hummel.
NA-MIC National Alliance for Medical Image Computing Core 1b – Engineering Computational Platform Jim Miller GE Research.
Powered by Microsoft Azure, Auctori Is the Next Generation in Multilingual, Global, Search Engine Optimized Web Content Management Systems MICROSOFT AZURE.
CS 732: Advance Machine Learning
AUTO-GC: Automatic Translation of Data Mining Applications to GPU Clusters Wenjing Ma Gagan Agrawal The Ohio State University.
DSLs: The Good, the Bad, and the Ugly Marjan Mernik University of Maribor Faculty of Electrical Engineering and Computer Science.
FUNCTIONAL PROGRAMING AT WORK - HASKELL AND DOMAIN SPECIFIC LANGUAGES Dr. John Peterson Western State Colorado University.
NCSA Strategic Retreat: System Software Trends Bill Gropp.
Tools and Libraries for Manycore Computing Kathy Yelick U.C. Berkeley and LBNL.
Heterogeneous Processing KYLE ADAMSKI. Overview What is heterogeneous processing? Why it is necessary Issues with heterogeneity CPU’s vs. GPU’s Heterogeneous.
Amir Shaikhha, Mohammed ElSeidy, Daniel Espino, and Christoph Koch
Panel: Beyond Exascale Computing
Scala days 2010 exmachina.
. ASAP 2017 Ramine Roane Sr Dir Product Planning July 12, 2017.
Productive Performance Tools for Heterogeneous Parallel Computing
2016/2017 Fundamentals in Web Development
Big Data A Quick Review on Analytical Tools
GPU Computing Jan Just Keijser Nikhef Jamboree, Utrecht
Spark Presentation.
Stefan Kaestle, Reto Achermann, Timothy Roscoe, Tim Harris ATC’15
Contact person: Mats Brorsson
Designed for Big Data Visual Analytics, Zoomdata Allows Business Users to Quickly Connect, Stream, and Visualize Data in the Microsoft Azure Platform MICROSOFT.
AllDigital Brevity on Microsoft Azure Cloud Platform Supercharges Media Workloads by Encoding During High-Speed File Transmission MICROSOFT AZURE ISV PROFILE:
Cloud DIKW based on HPC-ABDS to integrate streaming and batch Big Data
Bimal Sharma and Frederic Maire
Improve Patient Experience with Saama and Microsoft Azure
Department of Intelligent Systems Engineering
Introduction to CUDA.
The Challenge of Cross - Language Interoperability
Question 1 How are you going to provide language and/or library (or other?) support in Fortran, C/C++, or another language for massively parallel programming.
Presentation transcript:

Specialized systems are  Inevitable  Already the norm  Practical

Heterogeneous parallelism

4 Virtual Worlds Personal Robotics Data informatics Scientific Engineering Applications Heterogeneous Hardware New Arch. Programming Heterogeneous Parallelism

MPI Hadoop Verilog VHDL CUDA OpenCL Threads OpenM P Architecture Specific Programming Models

High Performance But Low Productivity

Virtual Worlds Personal Robotics Data informatics Scientific Engineering Applications Heterogeneous Hardware New Arch. Scal a Jav a Python Ruby C++ Clojure Not enough semantic knowledge to compile automatically No restrictions General-Purpose Languages

Make Specialized PL Practical  Inevitable  Already the norm  Practical

Domain Specific Languages Domain Specific Languages (DSLs) Programming language with restricted expressiveness for a particular domain High-level, usually declarative, and deterministic Most popular parallel PL Most Science apps start with this PL Enabled GPU innovation

Virtual Worlds Personal Robotics Data informatics Scientific Engineering Physics (Liszt) Data Analytics (OptiQL) Graph Alg. (Green Marl) Machine Learning (OptiML) Statistics (R) Applications Domain - Specific Languages Heterogeneous Hardware DSL Compiler DSL Compiler DSL Compiler DSL Compiler DSL Compiler New Arch. High Performance Domain- Specific Languages

HP DSLs Will Be Practical Embedded DSLs Flexible embedding languages: Scala, F# Metaprogramming (aka staging) Blurring line between libraries and languages DSL Frameworks Support domain specific optimizations Support parallelism and locality optimizations Multiple backends e.g. Spoofax, Rose, Delite, Terra/Lua