Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Philippe Charles is active.

Publication


Featured researches published by Philippe Charles.


conference on object-oriented programming systems, languages, and applications | 2005

X10: an object-oriented approach to non-uniform cluster computing

Philippe Charles; Christian Grothoff; Vijay A. Saraswat; Christopher Michael Donawa; Allan Kielstra; Kemal Ebcioglu; Christoph von Praun; Vivek Sarkar

It is now well established that the device scaling predicted by Moores Law is no longer a viable option for increasing the clock frequency of future uniprocessor systems at the rate that had been sustained during the last two decades. As a result, future systems are rapidly moving from uniprocessor to multiprocessor configurations, so as to use parallelism instead of frequency scaling as the foundation for increased compute capacity. The dominant emerging multiprocessor structure for the future is a Non-Uniform Cluster Computing (NUCC) system with nodes that are built out of multi-core SMP chips with non-uniform memory hierarchies, and interconnected in horizontally scalable cluster configurations such as blade servers. Unlike previous generations of hardware evolution, this shift will have a major impact on existing software. Current OO language facilities for concurrent and distributed programming are inadequate for addressing the needs of NUCC systems because they do not support the notions of non-uniform data access within a node, or of tight coupling of distributed nodes.We have designed a modern object-oriented programming language, X10, for high performance, high productivity programming of NUCC systems. A member of the partitioned global address space family of languages, X10 highlights the explicit reification of locality in the form of places}; lightweight activities embodied in async, future, foreach, and ateach constructs; a construct for termination detection (finish); the use of lock-free synchronization (atomic blocks); and the manipulation of cluster-wide global data structures. We present an overview of the X10 programming model and language, experience with our reference implementation, and results from some initial productivity comparisons between the X10 and Java™ languages.


international conference on supercomputing | 2014

An overview of the PTRAN analysis system for multiprocessing

Frances E. Allen; Michael G. Burke; Philippe Charles; Ron Cytron; Jeanne Ferrante

PTRAN (Parallel TRANslator) is a system for automatically restructuring sequential FORTRAN programs for execution on parallel architectures. This paper describes PTRAN-A: the currently operational analysis phase of PTRAN. The analysis is both broad and deep, incorporating interprocedural information into dependence analysis. The system is organized around a persistent database of program and procedure information. PTRAN incorporates several new, fast algorithms in a pragmatic design.


international conference on data engineering | 2003

Streaming XPath processing with forward and backward axes

Charles Barton; Philippe Charles; Deepak Goyal; Mukund Raghavachari; Marcus Fontoura; Vanja Josifovski

We present a streaming algorithm for evaluating XPath expressions that use backward axes (parent and ancestor) and forward axes in a single document-order traversal of an XML document. Other streaming XPath processors handle only forward axes. We show through experiments that our algorithm significantly outperforms (by more than a factor of two) a traditional nonstreaming XPath engine. Furthermore, our algorithm scales better because it retains only the relevant portions of the input document in memory. Our engine successfully processes documents over 1GB in size, whereas the traditional XPath engine degrades considerably in performance for documents over 100 MB in size and fails to complete for documents of size over 200 MB.


Journal of Parallel and Distributed Computing | 1988

An overview for the PTRAN analysis system for multiprocessing

Frances E. Allen; Michael G. Burke; Philippe Charles; Ron Cytron; Jeanne Ferreant

PTRAN (Parallel TRANslator) is a system for automatically restructuring sequential FORTRAN programs for execution on parallel architectures. This paper describes PTRAN-A: the currently operational analysis phase of PTRAN. The analysis is both broad and deep, incorporating interprocedural information into dependence analysis. The system is organized around a persistent database of program and procedure information. PTRAN incorporates several new, fast algorithms in a pragmatic design.


conference on object-oriented programming systems, languages, and applications | 2009

Accelerating the creation of customized, language-Specific IDEs in Eclipse

Philippe Charles; Robert M. Fuhrer; Stanley M. Sutton; Evelyn Duesterwald; Jurgen J. Vinju

Full-featured integrated development environments have become critical to the adoption of new programming languages. Key to the success of these IDEs is the provision of services tailored to the languages. However, modern IDEs are large and complex, and the cost of constructing one from scratch can be prohibitive. Generators that work from language specifications reduce costs but produce environments that do not fully reflect distinctive language characteristics. We believe that there is a practical middle ground between these extremes that can be effectively addressed by an open, semi-automated strategy to IDE development. This strategy is to reduce the burden of IDE development as much as possible, especially for internal IDE details, while opening opportunities for significant customizations to IDE services. To reduce the effort needed for customization we provide a combination of frameworks, templates, and generators. We demonstrate an extensible IDE architecture that embodies this strategy, and we show that this architecture can be used to produce customized IDEs, with a moderate amount of effort, for a variety of interesting languages.


automated software engineering | 2007

IMP: a meta-tooling platform for creating language-specific ides in eclipse

Philippe Charles; Robert M. Fuhrer; Stanley M. Sutton

Programming language design remains a vital field, with interest in languages targeting concurrency, scripting, and aspects, as well as in domain-specific languages. Full-featured integrated development environments (IDEs) have become critical to the adoption of new languages. A key factor in the success of these IDEs is the provision of services specifically tailored to the language. However, modern IDE frameworks are large and complex, and the cost of constructing a language-specific IDE from scratch remains prohibitive IMP is an IDE meta-tooling platform intended to relieve much of the burden of IDE development in Eclipse. IMP combines a language-independent framework, generators for partial implementations of language-specific services, and support for the completion of service implementations by programming at various levels of abstraction. Unlike much of the previous work, IMP permits signigicant customization of IDE appearance and behavior and accommodates incremental elaboration of the IDE; it also makes significant reuse of code and assists during the IDE development process. IMP-based IDEs are in use in research projects in IBM, including within IMP itself. IMP is available as an open-source release from SourceForge.net


international conference on supercomputing | 2014

Author retrospective for PTRAN's analysis and optimization techniques

Ron K. Cytron; Jeanne Ferrante; Frances E. Allen; Michael G. Burke; Philippe Charles

The PTRAN (Parallel Translator) system at IBM had as its goal the analysis and optimization of sequential programs for parallel architectures. In this paper, we give our perspective on what has changed since PTRAN, and what is still relevant.


Archive | 2002

Method for streaming XPath processing with forward and backward axes

Charles Barton; Philippe Charles; Deepak Goyal; Mukund Raghavachari


Archive | 1989

Compressed LR parsing table and method of compressing LR parsing tables

Philippe Charles; Gerald A. Fisher


Archive | 2006

Report on the Experimental Language X10

Bob Blainey; Philippe Charles; Perry Cheng; Christopher Michael Donawa; Julian Dolby; Robert M. Fuhrer; Patrick Gallop; Christian Grothoff; Allan Kielstra; Sriram Krishnamoorthy; Nathaniel Nystrom; Filip Pizlo; Vijay A. Saraswat; Vivek Sarkar; Armando Solar-Lezama; Christoph von Praun; Jan Vitek

Researchain Logo
Decentralizing Knowledge