Bothnia: a dual-personality extension to the Intel integrated graphics driver

  • Authors:
  • Gautham N. Chinya;Jamison D. Collins;Perry H. Wang;Hong Jiang;Guei-Yuan Lueh;Thomas A. Piazza;Hong Wang

  • Affiliations:
  • Microarchitecture Research Lab, Intel Labs, Intel Corporation;Microarchitecture Research Lab, Intel Labs, Intel Corporation;Microarchitecture Research Lab, Intel Labs, Intel Corporation;Visual and Parallel Computing Group, Intel Architecture Group, Intel Corporation;Visual and Parallel Computing Group, Intel Architecture Group, Intel Corporation;Visual and Parallel Computing Group, Intel Architecture Group, Intel Corporation;Microarchitecture Research Lab, Intel Labs, Intel Corporation

  • Venue:
  • ACM SIGOPS Operating Systems Review
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

In this paper, we introduce Bothnia, an extension to the Intel production graphics driver to support a shared virtual memory heterogeneous multithreading programming model. With Bothnia, the Intel graphics device driver can support both the traditional 3D graphics rendering software stack and a new class of heterogeneous multithreaded applications, which can use both IA (Intel Architecture) CPU cores and Intel integrated Graphics and Media Accelerator (GMA) cores in the same virtual address space. We describe the necessary architectural supports in both IA CPU and the GMA cores and present a reference Bothnia implementation. For a set of GPU accelerated media applications on a PC platform with Intel Core 2 Duo CPU and the Intel integrated GMA X3000 running under the Windows XP operating system, Bothnia achieves an average speedup of 3.6x compared to using the GPU as a device, primarily due to Bothnia's support for creation of shared virtual address space between heterogeneous threads of the same application spread on both IA CPU and GMA cores.