AMD Logo AMD Developer Central
  
AMD Developer Central
Webcast



Powered by
Quad-Core AMD Opteron™ Processors
Quad-Core AMD Opteron™ Processors





Join AMD at GCC Developers' Summit 2008
Skip Navigation LinksAMD Developer Central > Community > AMD Sponsored Events > Join AMD at GCC Developers' Summit 2008

Logo GCC Developers' Summit 2008

AMD is a Major Sponsor of this year's open source GCC Developers' Summit. We encourage anyone to chat in our Open Source Compiler forums on any AMD technology specific questions or other interaction before, during and after the event.

NOTE: This AMD forum is NOT intended to replace the function of the primary GCC mailing lists and open source repositories.

» Visit the GNU Toolset Optimized for AMD Platforms webpage

Presentations
GCC AMD Smarter Choice Logo
Improving GCC Infrastructure for Streamization
Main Room
Wednesday, June 18th - 09:15 - 10:00
Speaker: Sebastian Pop, AMD

Abstract:
GCC needs a strategy to support future multicore architectures, which will certainly include heterogeneous accelerator-like designs with explicit management of scratchpad memories; some have further restrictions, for example SIMD, with limited synchronisation capabilities. Meanwhile, we also anticipate that some platforms will offer hardware support for streaming, transactions and speculation.

The purpose of this paper is to give a survey and evaluation of some automatic and manual techniques for improving support for such targets in GCC. We focus on translation of sequential code for such platforms i.e. the translation to vector operations and to task graphs and their communication and memory access operations. We conclude with recommendations for strategic development of the compiler to meet these challenges.

Authors: Harsha Jagasia-AMD, Paul H J Kelly-Imperial College UK, Razya, Antoniu Pop-INRIA France, Sebastian Pop-AMD, Jan Sjodin-AMD

Tutorial
GCC AMD Smarter Choice Logo
Lambda and Graphite Loop Transformations
Main Room
Wednesday, June 18th - 15:00 - 15:45
Speaker: Sebastian Pop, AMD

In this tutorial we will look at GCC's Lambda and Graphite loop transformation frameworks. The first part of the tutorial reviews the representations of loops, arrays and dependences that are used in these frameworks. The second part describes how loop transformations are applied to this representation, and raises the still unsolved question of how to find good compositions of loop transformations at compile time.

Birds of a Feather (BoF) Session
Automatic parallelization in GCC
BoFs Room
Tuesday, June 17th - 17:15 - 18:15
Speaker: Razya Ladelsky, IBM Labs
(In collaboration with Diego Novillo-Google and Sebastian Pop-AMD).

With the emergence of multicore architectures there is a growing need for automatic parallelization, that distributes sequential code into multi threaded code. The OpenMP infrastructure together with existing data dependence analyses served as the basic infrastructure for an automatic parallelization optimization implementation recently in GCC.

The initial automatic parallelization work was contributed by Sebastian Pop and Zdenek Dvorak, and supports loops whose iterations are independent of each other. We later enhanced these capabilities to support loops with reduction dependence among iterations, thereby parallelizing additional loops. These auto-parallelization contributions have been incorporated into the upcoming version GCC4.3.

This BoF's goal is reviewing future directions of work that may further extend the optimization's applicability and framework. Among potential enhancements to be considered:
  • Considering finer grain heuristics for parallelizing e.g., Measuring the increase of code size Integrating the cost to create a thread and other factors
  • Handling of non-innermost loops - Reusing threads if there are several parallelizable loops in a function
  • Enhancing the current simple reduction detection to be more aggressive

Major Sponsor
AMD has a long-standing track record of collaboration with open source software development communities and continues to support the open source ecosystem.

In addition to providing innovative advances in computing platforms, AMD has teams dedicated to building tools to enable software developers to achieve greater levels of success leveraging these platforms.

We'll be discussing some of the new functionality that we have contributed to the GCC project, some of which is summarized on our new GCC Quick Reference Guide for Optimized x86 Code Generation.  Please evaluate usage of these GCC flags for your software development.

Be sure to check out GNU Toolset Optimized for AMD Platforms webpage, and also take a look at other free AMD tools and libraries downloads.