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

Ivan D. Baev

dblp:86/3003 · DBLP profile ↗
← Back
9ranked-venue papers
8as first author
0since 2021 · last 2009
—ORCID · none

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

Theory of computation · 5 · 5 first-authorSystems, architecture and hardware · 4 · 3 first-authorSoftware engineering, systems software and programming languages · 1 · 1 first-authorDatabases, data management, data science and information retrieval · 1 · 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.

Theoretical computer science
3 papers
Mathematical optimization · 62% Approximation and online algorithms · 38%
Software engineering, system software, and programming languages
1 paper
Compilers and program optimization · 75% Concurrent programming · 25%
Computer architecture, parallel and distributed computing, and storage systems
2 papers
Distributed systems · 44% Storage systems · 44% Processor architecture and microarchitecture · 13%

Topics — the 14 heaviest of 15, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Mathematical optimization › linear programming relaxation › rounding
LP rounding
0.112008
Approximation Algorithms for Data Placement Problems · SIAM J. Comput. 2008
Mathematical optimization › combinatorial optimization
network optimization
0.112008
Approximation Algorithms for Data Placement Problems · SIAM J. Comput. 2008
Compilers and program optimization › instruction scheduling
instruction-level parallelism
0.012001
Scheduling Superblocks with Bound-Based Branch Trade-Offs · IEEE Trans. Computers 2001
Compilers and program optimization
instruction scheduling
0.012001
Scheduling Superblocks with Bound-Based Branch Trade-Offs · IEEE Trans. Computers 2001
Concurrent programming
speculative execution
0.012001
Scheduling Superblocks with Bound-Based Branch Trade-Offs · IEEE Trans. Computers 2001
Compilers and program optimization › instruction scheduling
superblock scheduling
0.012001
Scheduling Superblocks with Bound-Based Branch Trade-Offs · IEEE Trans. Computers 2001
Storage systems
data placement
0.012001
Approximation algorithms for data placement in arbitrary networks · SODA 2001
Distributed systems
distributed data processing
0.012001
Approximation algorithms for data placement in arbitrary networks · SODA 2001
Approximation and online algorithms
approximation algorithms
0.012001
Approximation algorithms for data placement in arbitrary networks · SODA 2001
Approximation and online algorithms › approximation algorithms
data placement
0.012001
Approximation algorithms for data placement in arbitrary networks · SODA 2001
Mathematical optimization
discrete optimization
0.011999
Algorithms for Total Weighted Completion Time Scheduling · SODA 1999
Mathematical optimization
scheduling
0.011999
Algorithms for Total Weighted Completion Time Scheduling · SODA 1999
Mathematical optimization › scheduling › completion time minimization
weighted completion time
0.011999
Algorithms for Total Weighted Completion Time Scheduling · SODA 1999
Processor architecture and microarchitecture
branch prediction
0.012001
Scheduling Superblocks with Bound-Based Branch Trade-Offs · IEEE Trans. Computers 2001

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

steiner tree · 0.1rounding · 0.1linear programming relaxation · 0.1scheduling heuristic · 0.1lower bound analysis · 0.1
YearPublicationVenuePosition
2009 Techniques for Region-Based Register Allocation
abstract
Register allocation is an important component of every compiler and numerous studies have investigated ways to improve allocation quality or reduce allocation time. However, techniques proposed to reduce register allocation time tend to have a detrimental impact on application run-time. In this paper we propose three enhancements to region-based register allocation that not only provide scalable allocation times across multiple applications, but also improve application run-time. We have developed a register pressure based model to determine when using multiple regions is profitable, proposed the use of different regions for each register class, and designed a new region formation algorithm. Our implementation in HP-UX C/C++/Fortran production compilers led to 29% allocation time and 1.4% run-time improvements over a global allocator on the SPEC2006FP suite of benchmarks.
Ivan D. Baev
CGO1
2008 Approximation Algorithms for Data Placement Problems
abstract
We develop approximation algorithms for the problem of placing replicated data in arbitrary networks, where the nodes may both issue requests for data objects and have capacity for storing data objects so as to minimize the average data-access cost. We introduce the data placement problem to model this problem. We have a set of caches $\mathcal{F}$, a set of clients $\mathcal{D}$, and a set of data objects $\mathcal{O}$. Each cache i can store at most $u_i$ data objects. Each client $j\in\mathcal{D}$ has demand $d_j$ for a specific data object $o(j)\in\mathcal{O}$ and has to be assigned to a cache that stores that object. Storing an object o in cache i incurs a storage cost of $f_i^o$, and assigning client j to cache i incurs an access cost of $d_jc_{ij}$. The goal is to find a placement of the data objects to caches respecting the capacity constraints, and an assignment of clients to caches so as to minimize the total storage and client access costs. We present a 10-approximation algorithm for this problem. Our algorithm is based on rounding an optimal solution to a natural linear-programming relaxation of the problem. One of the main technical challenges encountered during rounding is to preserve the cache capacities while incurring only a constant-factor increase in the solution cost. We also introduce the connected data placement problem to capture settings where write-requests are also issued for data objects, so that one requires a mechanism to maintain consistency of data. We model this by requiring that all caches containing a given object be connected by a Steiner tree to a root for that object, which issues a multicast message upon a write to (any copy of) that object. The total cost now includes the cost of these Steiner trees. We devise a 14-approximation algorithm for this problem. We show that our algorithms can be adapted to handle two variants of the problem: (a) a k-median variant, where there is a specified bound on the number of caches that may contain a given object, and (b) a generalization where objects have lengths and the total length of the objects stored in any cache must not exceed its capacity.
Ivan D. Baev, Rajmohan Rajaraman, Chaitanya Swamy
SIAM J. Comput.1
2006 Prematerialization: reducing register pressure for free
abstract
Modern compiler transformations that eliminate redundant computations or reorder instructions, such as partial redundancy elimination and instruction scheduling, are very effective in improving application performance but tend to create longer and potentially more complex live ranges. Typically the task of dealing with the increased register pressure is left to the register allocator. To avoid introduction of spill code which can reduce or completely eliminate the benefit of earlier optimizations, researchers have developed techniques such as live range splitting and rematerializatio.This paper describes prematerialization (PM), a novel method for reducing register pressure for VLIW architectures with nop instructions. PM and rematerialization both select "never killed" live ranges and break them up by introducing one or more definitions close to the uses. However, while rematerialization is applied to live ranges selected for spilling during register allocation, PM relies on the availability of nop instructions and occurs prior to register allocation. PM simplifies register allocation by creating live ranges that are easier to color and less likely to spill. We have implemented prematerialization in HP-UX production compilers for the Intel® Itanium® architecture. Performance evaluation indicates that the proposed technique is effective in reducing register pressure inherent in highly optimized code.
Ivan D. Baev, Richard E. Hank, David H. Gross
PACT1
2002 An Experimental Study of Algorithms for Weighted Completion Time Scheduling
Ivan D. Baev, Waleed Meleis, Alexandre E. Eichenberger
Algorithmica1
2002 Lower bounds on precedence-constrained scheduling for parallel processors
Ivan D. Baev, Waleed Meleis, Alexandre E. Eichenberger
Inf. Process. Lett.1
2001 Approximation algorithms for data placement in arbitrary networks
Ivan D. Baev, Rajmohan Rajaraman
SODA1
2001 Scheduling Superblocks with Bound-Based Branch Trade-Offs
abstract
Since instruction level parallelism in basic blocks is often limited, compilers increase performance by creating superblocks that allow operations to be issued speculatively. This is difficult in general because each branch competes for the processor's limited resources. Previous work manages the performance trade-offs that exist between branches only indirectly. We show here that dependence and resource constraints can be used to gather explicit knowledge about scheduling trade-offs between branches. This paper's first contribution is a set of new, tighter lower bounds on the execution times of superblocks that specifically account for the dependence and resource conflicts between pairs of branches. This paper's second contribution is a novel superblock scheduling heuristic that finds high performance schedules by determining the operations that each branch needs to be scheduled early and selecting branches with compatible needs that favor beneficial branch trade-offs. Performance evaluations for superblocks from SPECint95 indicate that our bounds are very tight and that our scheduling heuristic outperforms well-known superblock scheduling algorithms.
Waleed Meleis, Alexandre E. Eichenberger, Ivan D. Baev
IEEE Trans. Computers3
2000 Lower Bounds on Precedence-Constrained Scheduling for Parallel Processors
abstract
We consider two general precedence-constrained scheduling problems that have wide applicability in the areas of parallel processing, high performance compiling, and digital system synthesis. These problems are intractable so it is important to be able to compute tight bounds on their solutions. A tight lower bound on makespan scheduling can be obtained by replacing precedence constraints with release and due dates, giving a problem that can be efficiently solved. We demonstrate that recursively applying this approach yields a bound that is provably tighter than other known bounds, and experimentally shown to achieve the optimal value at least 86.5% of the time over a synthetic benchmark. We compute the best known lower bound on weighted completion time scheduling by applying the recent discovery of a new algorithm for solving a related scheduling problem. Experiments show that this bound significantly outperforms the linear programming-based bound. We have therefore demonstrated that combinatorial algorithms can be a valuable alternative to linear programming for computing tight bounds on large scheduling problems.
Ivan D. Baev, Waleed Meleis, Alexandre E. Eichenberger
ICPP1
1999 Algorithms for Total Weighted Completion Time Scheduling
Ivan D. Baev, Waleed Meleis, Alexandre E. Eichenberger
SODA1