Concurrent Analytical Query Processing with GPUs

文章目录

Wang K , Zhang K , Yuan Y , et al. 
Concurrent analytical query processing with GPUs[J]. 
Proceedings of the VLDB Endowment, 2014, 7(11):1011-1022.

ABSTRACT

  • GPUs used as dedicated accelerators to process individual query
  • Sharing GPUs among concurrent queries not supported
  • Based on the profiling of
    • an opensource GPU query engine
    • running commonly used singlequery data warehousing workloads,
    • utilization of main GPU resources is 25%.
  • low system throughput

an opensource GPU query engine一个开源的GPU查询引擎。在这上面跑普遍使用的单查询数据仓库负载

  • proposes concurrent query execution as an solution.
  • To efficiently share GPUs among concurrent queries for high throughput,
    • provide software support
    • to control and resolve resource contention
  • Our solution relies on GPU query scheduling
    • device memory swapping policies
    • to address this challenge

  • implemented a prototype system and evaluated it intensively
  • results confirm the effectiveness and performance advantage of our approach
  • By executing multiple GPU queries concurrently, system throughput can be improved by up to 55% compared with dedicated processing

1. INTRODUCTION

  • Multitasking
    • a proven practice in computer systems to achieve high resource utilization and system throughput
  • wide adoption of GPUs for analytical query processing,
  • mainly used as dedicated co-processors,
    • unable to
    • support efficient executions of multiple queries concurrently.

  • data-driven characteristics of
    • GPU operations,
    • a single query can hardly consume all GPU resources
  • Dedicated query processing leads to resource underutilization,
    • limits the overall performance of the database system
  • In market-critical applications
    • high-performance data warehousing
    • multi-client dataflow analysis
  • large number of users demand query results simultaneously
  • volume of data to be processed keeps increasing,
    • essential for user queries to make continuous progress
    • so that
    • new results can be generated constantly to
    • satisfy the goal of interactive analysis.
    • The lack of concurrent querying capability restricts
      the adoption of GPU databases in these application fields.

  • dedicated usage of GPUs still needed for latency-
    critical queries to ensure performance isolation
  • databases must support
    • concurrent multi-query execution
    • to maximize the throughput of non-latency-sensitive queries

对延迟敏感的查询,啥叫去保证性能隔离啊??

  • This consolidated usage of GPU resources enhances system efficiency and functionalities, but it makes the design of query execution engine more challenging.

啥叫This consolidated usage of GPU resources

  • For maximal performance,each user query tends to reserve a large amount of GPU resources.
  • Unlike CPUs
    • OS supports fine-grained context switches
    • virtual memory abstractions for resource sharing,
  • current GPU hardware and system software provide
    • none of these interfaces
    • for database resource management

GPU任务不能被强占

  • GPU tasks cannot be preempted once started;
    • on-demand data loading is not supported during task execution;

数据只能预先搞嘛??

  • automatic data swapping service is also missing when the device memory undergoes pressure

  • without efficient coordination by the database,
  • multiple GPU queries attempting to execute simultaneously cause
    • low resource usage,
    • system thrashing,
    • even query abortions,
    • degrade, overall system performance

猜你喜欢

转载自blog.csdn.net/zhoutianzi12/article/details/107875896