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.

George C. Caragea

dblp:42/7217 · also George Constantin Caragea · DBLP profile ↗
← Back
7ranked-venue papers
3as first author
0since 2021 · last 2015
0009-0008-3310-3344ORCID · corroborated

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

Systems, architecture and hardware · 3 · 2 first-authorDatabases, data management, data science and information retrieval · 2Software engineering, systems software and programming languages · 1

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.

Computer architecture, parallel and distributed computing, and storage systems
2 papers
Parallel and multicore computing · 100%
Databases, data mining, and information retrieval
2 papers
Query processing and optimization · 71% Database system architecture and tuning · 29%

Topics — the 12 heaviest of 13, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Parallel and multicore computing › parallel scheduling
adaptive scheduling
0.322014
Lazy Scheduling: A Runtime Adaptive Scheduler for Declarative Parallelism · ACM Trans. Program. Lang. Syst. 2014
Lazy binary-splitting: a run-time adaptive work-stealing scheduler · PPoPP 2010
Parallel and multicore computing › load balancing › dynamic load balancing
work stealing
0.322014
Lazy Scheduling: A Runtime Adaptive Scheduler for Declarative Parallelism · ACM Trans. Program. Lang. Syst. 2014
Lazy binary-splitting: a run-time adaptive work-stealing scheduler · PPoPP 2010
Database system architecture and tuning › parallel database system
massively parallel processing database
0.212015
Optimization of Common Table Expressions in MPP Database Systems · Proc. VLDB Endow. 2015
Query processing and optimization › query optimization
query optimizer architecture
0.212014
Orca: a modular query optimizer architecture for big data · SIGMOD Conference 2014
Parallel and multicore computing › parallel programming models
declarative parallelism
0.212014
Lazy Scheduling: A Runtime Adaptive Scheduler for Declarative Parallelism · ACM Trans. Program. Lang. Syst. 2014
Parallel and multicore computing
parallel programming models and runtimes
0.212014
Lazy Scheduling: A Runtime Adaptive Scheduler for Declarative Parallelism · ACM Trans. Program. Lang. Syst. 2014
Parallel and multicore computing
task scheduling
0.212014
Lazy Scheduling: A Runtime Adaptive Scheduler for Declarative Parallelism · ACM Trans. Program. Lang. Syst. 2014
Parallel and multicore computing
parallel programming models
0.112010
Lazy binary-splitting: a run-time adaptive work-stealing scheduler · PPoPP 2010
Parallel and multicore computing › parallel scheduling
runtime scheduling
0.112010
Lazy binary-splitting: a run-time adaptive work-stealing scheduler · PPoPP 2010
Query processing and optimization › query planning
query plan generation
0.112015
Optimization of Common Table Expressions in MPP Database Systems · Proc. VLDB Endow. 2015
Query processing and optimization
analytical query processing
0.112014
Orca: a modular query optimizer architecture for big data · SIGMOD Conference 2014
Parallel and multicore computing › parallelization strategies
nested parallelism
0.012010
Lazy binary-splitting: a run-time adaptive work-stealing scheduler · PPoPP 2010

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

load balancing · 0.2dynamic scheduling · 0.2lazy binary splitting · 0.1eager binary splitting · 0.1
YearPublicationVenuePosition
2015 Optimization of Common Table Expressions in MPP Database Systems
abstract
Big Data analytics often include complex queries with similar or identical expressions, usually referred to as Common Table Expressions (CTEs). CTEs may be explicitly defined by users to simplify query formulations, or implicitly included in queries generated by business intelligence tools, financial applications and decision support systems. In Massively Parallel Processing (MPP) database systems, CTEs pose new challenges due to the distributed nature of query processing, the overwhelming volume of underlying data and the scalability criteria that systems are required to meet. In these settings, the effective optimization and efficient execution of CTEs are crucial for the timely processing of analytical queries over Big Data. In this paper, we present a comprehensive framework for the representation, optimization and execution of CTEs in the context ofOrca-- Pivotal's query optimizer for Big Data. We demonstrate experimentally the benefits of our techniques using industry standard decision support benchmark.
Amr El-Helw, Venkatesh Raghavan, Mohamed A. Soliman, George C. Caragea, Zhongxian Gu, Michalis Petropoulos
Proc. VLDB Endow.4
2014 Orca: a modular query optimizer architecture for big data
abstract
The performance of analytical query processing in data management systems depends primarily on the capabilities of the system's query optimizer. Increased data volumes and heightened interest in processing complex analytical queries have prompted Pivotal to build a new query optimizer.
Mohamed A. Soliman, Lyublena Antova, Venkatesh Raghavan, Amr El-Helw, Zhongxian Gu, Entong Shen, George C. Caragea, Carlos Garcia-Alvarado, Foyzur Rahman, Michalis Petropoulos, F. Michael Waas, Sivaramakrishnan Narayanan, Konstantinos Krikellas, Rhonda Baldwin
SIGMOD Conference7
2014 Lazy Scheduling: A Runtime Adaptive Scheduler for Declarative Parallelism
abstract
Lazy scheduling is a runtime scheduler for task-parallel codes that effectively coarsens parallelism on load conditions in order to significantly reduce its overheads compared to existing approaches, thus enabling the efficient execution of more fine-grained tasks. Unlike other adaptive dynamic schedulers, lazy scheduling does not maintain any additional state to infer system load and does not make irrevocable serialization decisions. These two features allow it to scale well and to provide excellent load balancing in practice but at a much lower overhead cost compared to work stealing, the golden standard of dynamic schedulers. We evaluate three variants of lazy scheduling on a set of benchmarks on three different platforms and find it to substantially outperform popular work stealing implementations on fine-grained codes. Furthermore, we show that the vast performance gap between manually coarsened and fully parallel code is greatly reduced by lazy scheduling, and that, with minimal static coarsening, lazy scheduling delivers performance very close to that of fully tuned code. The tedious manual coarsening required by the best existing work stealing schedulers and its damaging effect on performance portability have kept novice and general-purpose programmers from parallelizing their codes. Lazy scheduling offers the foundation for a declarative parallel programming methodology that should attract those programmers by minimizing the need for manual coarsening and by greatly enhancing the performance portability of parallel code.
Alexandros Tzannes, George C. Caragea, Uzi Vishkin, Rajeev Barua
ACM Trans. Program. Lang. Syst.2
2011 Brief announcement: better speedups for parallel max-flow
abstract
We present a parallel solution to the Maximum-Flow (Max-Flow) problem, suitable for a modern many-core architecture. We show that by starting from a PRAM algorithm, following an established "programmer's workflow" and targeting XMT, a PRAM-inspired many-core architecture, we achieve significantly higher speed-ups than previous approaches. Comparison with the fastest known serial max-flow implementation on a modern CPU demonstrates for the first time potential for orders-of-magnitude performance improvement for Max-Flow. Using XMT, the PRAM Max-Flow algorithm is also much easier to program than for other parallel platforms, contributing a powerful example toward dual validation of both PRAM algorithmics and XMT.
George C. Caragea, Uzi Vishkin
SPAA1
2010 Resource-Aware Compiler Prefetching for Many-Cores
abstract
Super-scalar, out-of-order processors that can have tens of read and write requests in the execution window place significant demands on Memory Level Parallelism (MLP). Multi-and many-cores with shared parallel caches further increase MLP demand. Current cache hierarchies however have been unable to keep up with this trend, with modern designs allowing only 4-16 concurrent cache misses. This disconnect is exacerbated by recent highly parallel architectures (e.g. GPUs) where power and area per-core budget favor lighter cores with less resources. Support for hardware and software prefetch increase MLP pressure since these techniques overlap multiple memory requests with existing computation. In this paper, we propose and evaluate a novel Resource-Aware Prefetching (RAP) compiler algorithm that is aware of the number of simultaneous prefetches supported, and optimized for the same. We show that in situations where not enough resources are available to issue prefetch instructions for all references in a loop, it is more beneficial to decrease the prefetch distance and prefetch for as many references as possible, rather than use a fixed prefetched distance and skip prefetching for some references, as in current approaches. We implemented our algorithm in a GCC-derived compiler and evaluated its performance using an emerging fine-grained many-core architecture. Our results show that the RAP algorithm outperforms a well-known loop prefetching algorithm by up to 40.15% and the state-of-the art GCC implementation by up to 34.79%. Moreover, we compare the RAP algorithm with a simple hardware prefetching mechanism, and show improvements of up to 24.61%.
George C. Caragea, Alexandros Tzannes, Fuat Keceli, Rajeev Barua, Uzi Vishkin
ISPDC1
2010 Lazy binary-splitting: a run-time adaptive work-stealing scheduler
abstract
We present Lazy Binary Splitting (LBS), a user-level scheduler of nested parallelism for shared-memory multiprocessors that builds on existing Eager Binary Splitting work-stealing (EBS) implemented in Intel's Threading Building Blocks (TBB), but improves performance and ease-of-programming. In its simplest form (SP), EBS requires manual tuning by repeatedly running the application under carefully controlled conditions to determine a stop-splitting-threshold (sst)for every do-all loop in the code. This threshold limits the parallelism and prevents excessive overheads for fine-grain parallelism. Besides being tedious, this tuning also over-fits the code to some particular dataset, platform and calling context of the do-all loop, resulting in poor performance portability for the code. LBS overcomes both the performance portability and ease-of-programming pitfalls of a manually fixed threshold by adapting dynamically to run-time conditions without requiring tuning.
Alexandros Tzannes, George C. Caragea, Rajeev Barua, Uzi Vishkin
PPoPP2
2009 Brief announcement: performance potential of an easy-to-program PRAM-on-chip prototype versus state-of-the-art processor
abstract
We compare the Paraleap FPGA computer, a 64-processor hardware prototype of the PRAM-driven XMT architecture, with an Intel Core 2 Duo processor and show that Paraleap outperforms the Intel processor by up to 13.89x in terms of cycle counts. The comparison favors the Intel design, since the silicon area of an ASIC implementation of the 64-processor XMT design is the same as that of a single core.
George C. Caragea, A. Beliz Saybasili, Xingzhi Wen, Uzi Vishkin
SPAA1