Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Vassily Litvinov

dblp:49/1463 · DBLP profile ↗
← Back
3ranked-venue papers
1as first author
0since 2021 · last 2012
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 2 · 1 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
2 papers
Programming languages and type systems · 72% Compilers and program optimization · 28%
Computer architecture, parallel and distributed computing, and storage systems
1 paper
Performance modeling and evaluation · 100%

Topics — the 3 heaviest of 4, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Programming languages and type systems › type systems › polymorphism › parametric polymorphism
bounded polymorphism
0.011998
Contraint-Based Polymorphism in Cecil: Towards a Practical and Static Type System · OOPSLA 1998
Programming languages and type systems
type systems
0.011998
Contraint-Based Polymorphism in Cecil: Towards a Practical and Static Type System · OOPSLA 1998
Performance modeling and evaluation › benchmarking › benchmark suite analysis
benchmark characterization
0.011996
Vortex: An Optimizing Compiler for Object-Oriented Languages · OOPSLA 1996

Methods — techniques the papers use, named apart from their topics

f-bounded polymorphism · 0.0covariant type parameters · 0.0
YearPublicationVenuePosition
2012 Global Data Re-allocation via Communication Aggregation in Chapel
abstract
Chapel is a parallel programming language designed to improve the productivity and ease of use of conventional and parallel computers. This language currently delivers sub optimal performance when executing codes that perform global data re-allocation operations on distributed memory architectures. This is mainly due to data communication that is done without aggregation (one message for each remote array element). In this work, we analyze Chapel's standard Block and Cyclic distribution modules and optimize the communication routines for array assignments by performing aggregation. Thanks to the expressive power of Chapel, the compiler and runtime have enough information to do communication aggregation without user intervention. The runtime relies on the low-level GAS Net networking layer, whose versions of one-sided bulk put/get routines that support strides are particularly useful for us. Experimental results conducted on Hector (a Cray XE6) and Jaguar (Cray XK6)reveal that the implemented techniques can lead to significant reductions in communication time.
Alberto Sanz, Rafael Asenjo, Juan López, Rafael Larrosa, Angeles G. Navarro, Vassily Litvinov, Sung-Eun Choi, Bradford L. Chamberlain
SBAC-PAD6
1998 Contraint-Based Polymorphism in Cecil: Towards a Practical and Static Type System
abstract
We present a static type system for object-oriented languages which strives to provide static typechecking without resorting to dynamic "type casts," restricting what code the programmer can write, or being too verbose or difficult to use in practice. The type system supports bounded parametric polymorphism where the bounds on type variables can be expressed using general recursive subtype or signature constraints, with F-bounded polymorphism and covariant type parameters being special cases.We implemented this type system in the Cecil language and used it to successfully typecheck a 100,000-line Cecil program, the Vortex optimizing compiler. Our experience was very good: dynamically-typed code needed very little rewriting. We also observed several common programming situations that presented a challenge for our type system. We discuss these situations and ways to typecheck them statically.
Vassily Litvinov
OOPSLA1
1996 Vortex: An Optimizing Compiler for Object-Oriented Languages
abstract
Previously, techniques such as class hierarchy analysis and profile-guided receiver class prediction have been demonstrated to greatly improve the performance of applications written in pure object-oriented languages, but the degree to which these results are transferable to applications written in hybrid languages has been unclear. In part to answer this question, we have developed the Vortex compiler infrastructure, a language-independent optimizing compiler for object-oriented languages, with front-ends for Cecil, C++, Java, and Modula-3. In this paper, we describe the Vortex compiler's intermediate language, internal structure, and optimization suite, and then we report the results of experiments assessing the effectiveness of different combinations of optimizations on sizable applications across these four languages. We characterize the benchmark programs in terms of a collection of static and dynamic metrics, intended to quantify aspects of the "object-orientedness" of a program.
Jeffrey Dean, Greg DeFouw, David Grove, Vassily Litvinov, Craig Chambers
OOPSLA4