Accelerated Library Framework for Cell B'E' - PowerPoint PPT Presentation

1 / 15
About This Presentation
Title:

Accelerated Library Framework for Cell B'E'

Description:

... a given set of input data, and computes the resulting output data based on the given input ... Optionally, the name of the accelerator task context setup function ... – PowerPoint PPT presentation

Number of Views:31
Avg rating:3.0/5.0
Slides: 16
Provided by: ludwigCsi
Category:

less

Transcript and Presenter's Notes

Title: Accelerated Library Framework for Cell B'E'


1
Accelerated Library Framework for Cell B.E.
  • Jung-Yin, Chien

2
What is ALF?
  • The Accelerated Library Framework (ALF) provides
    a programming environment for
  • Data and Task parallel applications and libraries
  • The ALF provides you with
  • a set of interfaces to simplify library
    development on heterogeneous multi-core systems
  • ALF supports the multiple-program-multiple-data
    (MPMD) programming model where multiple programs
    can be scheduled to run on multiple accelerator
    elements at the same time

3
What is ALF?
  • The ALF functionality includes
  • Data transfer management
  • Parallel task management
  • Double buffering
  • Dynamic load balancing for data parallel tasks
  • you can also create descriptions for multiple
    compute tasks and define their execution orders
    by defining task dependency
  • The ALF runtime provides an optimal parallel
    scheduling scheme for the tasks based on given
    dependencies

4
  • Using a layered approach to develop applications
    in ALF
  • Application
  • You develop programs only at the host level
  • To use the provided accelerated libraries
  • Alf_fft(data)
  • Accelerated library
  • You use the ALF APIs to implement the internal
    logic of libraries
  • You just needs knowledge on what data to pass to
    the kernel and how to partition this data up
  • Computation kernel
  • You write optimized accelerator code at the
    accelerator level

5
Overview of ALF external components
  • ALF work block task
  • a computational kernel is defined as an
    accelerator routine that takes a given set of
    input data, and computes the resulting output
    data based on the given input
  • ALF lightweight task
  • a lightweight task is scheduled to run, ALF
    runtime gives the control to the task instances
    running on the accelerators

6
Basic structure of an ALF application
  • ALF application structure and process flow

7
Concepts
  • Computation kernel
  • A computational kernel is a user-defined
    accelerator routine that does the computation for
    a corresponding task.
  • Task descriptor
  • For work block tasks
  • The name of the accelerator computational kernel
    function
  • Optionally, the name of the accelerator input
    data transfer list prepare function
  • Optionally, the name of the accelerator output
    data transfer list prepare function
  • Optionally, the name of the accelerator task
    context setup function
  • Optionally, the name of the accelerator task
    context merge function
  • For lightweight tasks
  • The name of the accelerator entry point function

8
Concepts
  • Task
  • A task is a program that is executed on a number
    of accelerators. For each accelerator that runs a
    task, a task instance is spawned
  • Task instance
  • A task can be scheduled to run on multiple
    accelerators. Each task running on an accelerator
    is known as a task instance
  • Task dependency
  • D (AB)CT
  • Dependency (MPMD)
  • Task 1
  • AB
  • Task2
  • CT
  • Task3
  • Multiply
  • Task3 executes after Task1 and Task2 complete

9
Concepts
  • Work Block

10
Concepts
  • Work block
  • A work block represents an invocation of a
    computational kernel of a work block task with a
    specific set of related input data, output data,
    and parameters
  • The input and output data are described by
    corresponding data transfer lists
  • Data transfer list

11
Work Block scheduling(1)
  • Default work block scheduling policy

12
Work Block scheduling(2)
  • Cyclic work block distribution policy

13
Work Block scheduling(3)
  • Bundled work block distribution policy

14
Platform-specific constraints for the ALF
implementation
  • SPE accelerator memory constraints

15
  • And so on
  • Input Buffer
  • Output Buffer
  • Common buffer
Write a Comment
User Comments (0)
About PowerShow.com