Author image not provided
 David Cunningham

Authors:
Add personal information
  Affiliation history
Bibliometrics: publication history
Average citations per article9.25
Citation Count111
Publication count12
Publication years2008-2016
Available for download8
Average downloads per article256.50
Downloads (cumulative)2,052
Downloads (12 Months)126
Downloads (6 Weeks)16
SEARCH
ROLE
Arrow RightAuthor only


AUTHOR'S COLLEAGUES
See all colleagues of this author

SUBJECT AREAS
See all subject areas




BOOKMARK & SHARE


12 results found Export Results: bibtexendnoteacmrefcsv

Result 1 – 12 of 12
Sort by:

1 published by ACM
March 2016 ACM Transactions on Parallel Computing (TOPC) - Special Issue on PPOPP 2014: Volume 2 Issue 4, March 2016
Publisher: ACM
Bibliometrics:
Citation Count: 1
Downloads (6 Weeks): 0,   Downloads (12 Months): 14,   Downloads (Overall): 95

Full text available: PDFPDF
X10 is a high-performance, high-productivity programming language aimed at large-scale distributed and shared-memory parallel applications. It is based on the Asynchronous Partitioned Global Address Space (APGAS) programming model, supporting the same fine-grained concurrency mechanisms within and across shared-memory nodes. We demonstrate that X10 delivers solid performance at petascale by running ...
Keywords: APGAS, X10, performance, scalability

2
August 2014 Proceedings of the 28th European Conference on ECOOP 2014 --- Object-Oriented Programming - Volume 8586
Publisher: Springer-Verlag New York, Inc.
Bibliometrics:
Citation Count: 1

We present a formal small-step structural operational semantics for a large fragment of X10, unifying past work. The fragment covers multiple places, mutable objects on the heap, sequencing, <Literal>try/catch</Literal>, <Literal>async</Literal>, <Literal>finish</Literal>, and <Literal>at</Literal> constructs. This model accurately captures the behavior of a large class of concurrent, multi-place X10 programs. Further, ...

3 published by ACM
February 2014 PPoPP '14: Proceedings of the 19th ACM SIGPLAN symposium on Principles and practice of parallel programming
Publisher: ACM
Bibliometrics:
Citation Count: 12
Downloads (6 Weeks): 6,   Downloads (12 Months): 37,   Downloads (Overall): 404

Full text available: PDFPDF
Scale-out programs run on multiple processes in a cluster. In scale-out systems, processes can fail. Computations using traditional libraries such as MPI fail when any component process fails. The advent of Map Reduce, Resilient Data Sets and MillWheel has shown dramatic improvements in productivity are possible when a high-level programming ...
Keywords: X10, distributed, parallel, resilience
Also published in:
November 2014  ACM SIGPLAN Notices - PPoPP '14: Volume 49 Issue 8, August 2014

4 published by ACM
February 2014 PPoPP '14: Proceedings of the 19th ACM SIGPLAN symposium on Principles and practice of parallel programming
Publisher: ACM
Bibliometrics:
Citation Count: 15
Downloads (6 Weeks): 1,   Downloads (12 Months): 16,   Downloads (Overall): 376

Full text available: PDFPDF
X10 is a high-performance, high-productivity programming language aimed at large-scale distributed and shared-memory parallel applications. It is based on the Asynchronous Partitioned Global Address Space (APGAS) programming model, supporting the same fine-grained concurrency mechanisms within and across shared-memory nodes. We demonstrate that X10 delivers solid performance at petascale by running ...
Keywords: APGAS, X10, performance, scalability
Also published in:
November 2014  ACM SIGPLAN Notices - PPoPP '14: Volume 49 Issue 8, August 2014

5 published by ACM
June 2013 X10 '13: Proceedings of the third ACM SIGPLAN X10 Workshop
Publisher: ACM
Bibliometrics:
Citation Count: 1
Downloads (6 Weeks): 1,   Downloads (12 Months): 5,   Downloads (Overall): 78

Full text available: PDFPDF
The ability to smoothly interoperate with other programming languages is an essential feature to reduce the barriers to adoption for new languages such as X10. Compiler-supported interoperability between Managed X10 and Java was initially previewed in X10 version 2.2.2 and is now fully supported in X10 version 2.3. In this ...
Keywords: Java, X10, exceptions, multi-platform, arrays, code generation, generics, interoperability, primitives, unified type system

6
August 2012 Proceedings of the VLDB Endowment: Volume 5 Issue 12, August 2012
Publisher: VLDB Endowment
Bibliometrics:
Citation Count: 26
Downloads (6 Weeks): 3,   Downloads (12 Months): 20,   Downloads (Overall): 590

Full text available: PDFPDF
Main Memory Map Reduce (M3R) is a new implementation of the Hadoop Map Reduce (HMR) API targeted at online analytics on high mean-time-to-failure clusters. It does not support resilience, and supports only those workloads which can fit into cluster memory. In return, it can run HMR jobs unchanged -- including ...

7
June 2012 ECOOP'12: Proceedings of the 26th European conference on Object-Oriented Programming
Publisher: Springer-Verlag
Bibliometrics:
Citation Count: 2

X10 is an object oriented programming language with a sophisticated type system (constraints, class invariants, non-erased generics, closures) and concurrency constructs (asynchronous activities, multiple places). Object initialization is a cross-cutting concern that interacts with all of these features in delicate ways that may cause type, runtime, and security errors. This ...

8 published by ACM
October 2011 OOPSLA '11: Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion
Publisher: ACM
Bibliometrics:
Citation Count: 0
Downloads (6 Weeks): 1,   Downloads (12 Months): 6,   Downloads (Overall): 80

Full text available: PDFPDF
We will demonstrate the maturity of the X10 programming language by implementing such a real-time ray tracer using a pile of low spec GPGPU laptops and a Gigabit Ethernet switch. Ray tracing is a rendering technique that can better simulate complex lighting situations such as reflections and refractions. It is ...
Keywords: cuda, distributed, gpu, heterogeneous, high-level, java, multi-core, parallel, x10

9 published by ACM
June 2011 X10 '11: Proceedings of the 2011 ACM SIGPLAN X10 Workshop
Publisher: ACM
Bibliometrics:
Citation Count: 10
Downloads (6 Weeks): 0,   Downloads (12 Months): 9,   Downloads (Overall): 112

Full text available: PDFPDF
To reliably write high performance code in any programming language, an application programmer must have some understanding of the performance characteristics of the language's core constructs. We call this understanding a performance model for the language. Some aspects of a performance model are fundamental to the programming language and are ...

10 published by ACM
June 2011 X10 '11: Proceedings of the 2011 ACM SIGPLAN X10 Workshop
Publisher: ACM
Bibliometrics:
Citation Count: 13
Downloads (6 Weeks): 1,   Downloads (12 Months): 24,   Downloads (Overall): 276

Full text available: PDFPDF
GPU architectures have emerged as a viable way of considerably improving performance for appropriate applications. Program fragments (kernels) appropriate for GPU execution can be implemented in CUDA or OpenCL and glued into an application via an API. While there is plenty of evidence of performance improvements using this approach, there ...
Keywords: distributed, high-level, multicore, CUDA, GPU, Java, heterogeneous, parallel, X10

11
December 2008 Formal Methods for Components and Objects: 6th International Symposium, FMCO 2007, Amsterdam, The Netherlands, October 24-26, 2007, Revised Lectures
Publisher: Springer-Verlag
Bibliometrics:
Citation Count: 13

The Universe Type System is an ownership type system for object-oriented programming languages that hierarchically structures the object store; it is used to reason modularly about programs. We formalise Universe Types for a core subset of Java in two steps: We first define a Topological Type System that structures the ...

12
March 2008 CC'08/ETAPS'08: Proceedings of the Joint European Conferences on Theory and Practice of Software 17th international conference on Compiler construction
Publisher: Springer-Verlag
Bibliometrics:
Citation Count: 7

Atomicity provides strong guarantees against errors caused by unanticipated thread interactions, but is difficult for programmers to implement with low-level concurrency primitives. With the introduction of multicore processors, the problems are compounded. Atomic sections are a high level language feature that programmers can use to designate the blocks of code ...



The ACM Digital Library is published by the Association for Computing Machinery. Copyright © 2018 ACM, Inc.
Terms of Usage   Privacy Policy   Code of Ethics   Contact Us