From cTuning.org

Revision as of 21:33, 24 October 2010 by Gfursin (Talk | contribs)
Jump to: navigation, search
logo_unidapt_f.gif

Universal Adaptation Framework

Statically enabling run-time optimization and adaptation
Web shortcut: http://cTuning.org/unidapt
Navigation: cTuning.org > CTools 
ANNOUNCEMENT: After the release of the cTuning CC (MILEPOST GCC) and a relatively quiet summer and autumn 2010 spent mostly on thinking ;), we plan to resume our open collaborative activities in 2011 and will work on a new collaborative platform and a repository cTuning2. Currently, we are looking for additional funding to keep it running and to access various new hardware (embedded or HPC systems, GPUs, etc) to perform empirical collective learning and optimization to suggest better program optimizations or hardware designs based on multi-objective criteria (execution time/power/architecture size/code size/compilation time/etc) (ref1, ref2, ref3), so if you are interested to support cTuning initiative in 2011, please don't hesitate to contact Dr. Grigori Fursin (cTuning founder and R&D coordinator). More information will be available at the beginning of 2011.


UNIversal aDAPTation Framework (UNIDAPT) is the hybrid static/dynamic framework to enable low-overhead run-time adaptation, optimization and scheduling for unicore and heterogeneous multi-core architectures (GPGPU, CELL, etc) based on static function cloning (with explicit memory transfers if needed), dynamic monitoring routines and run-time decision trees based on static and dynamic program and dataset features. We are implementing this framework in GCC 4.4/4.5 combined with ICI (though maybe source-to-source adaptation framework can still be useful) within Google Summer of Code'09 program. We also hope to provide a unified view of heterogeneous architectures (CPU/GPU, CELL-like, FPGA, accelerators), optimizations and data movement/partitioning with a high-level abstraction layer (architectures, compilers, run-time systems) to automate and simplify program development and optimization for heterogeneous multi-core systems.

unidapt-framework.gif figure_unidapt.gif figure_unidapt_hetero.gif
News
  • 2010.August.16 - Submissions are now open for CGO 2011.
  • 2010.June.30 - Call for papers: CGO'11.
  • 2010.June.9 - Finally, we recovered all cTuning website and services after physical hard drive failure. However, if you still experience some problems or abnormal behavior, please report that to the cTuning discussions mailing list! Thanks and sorry for any inconvenience!
  • 2010.May.22 - Pre-release of cTuning CC V2.5 is now available. cTuning CC is a free, open source compiler collection that combines multiple tools and techniques including MILEPOST GCC, ICI, CCC framework, cTuning web-services and Collective Optimization Database and cBench as the first practical step toward self-tuning, adaptive computing systems based on industrial tools, empirical techniques, transparent collective optimization, statistical analysis and machine learning. cTuning CC is a wrapper around any compiler such as GCC, LLVM, Open64, Path64, etc that can transparently invoke machine learning mode to correlate program features of a compiled program with the ones stored in the Collective Optimization Database and suggest better optimizations for multi-objective criteria such as improving execution time, compilation time, code size, etc (using optimization space frontier detection).
  • 2010.April.28 - List of all projects accepted for Google Summer of Code 2010 is now available on-line. There are many projects related to GCC, LLVM, MONO, etc.
    Discussion page about GCC as a research compiler has been updated.
    Diego Novillo started a proposal to modularize GCC.
  • 2010.April.14 - Long awaited GCC 4.5 has been released! It features new plugin framework with some parts of ICI to continue GCC modularization and parametrization, simplify pass manipulation and reordering, and enable better integration with cTuning/MILEPOST tools to automate optimization space exploration and prediction of profitable combinations of program transformations during multi-objective optimizations (balancing execution time, code size, compilation time, etc) for a given program/dataset/architecture.
  • 2010.March.17 - We pre-released all tools including MILEPOST GCC, CCC framework, cBench and cDatabase. It's a major update of cTuning tools including changes behind to support transparent optimizations of programs and libraries, better multi-objective optimization (including balancing of execution time, code size and compilation time), bug fixes in averaging multiple optimization cases, C++ support in MILEPOST GCC, support of all version of GCC 4.4, new static features in MILEPOST GCC, extended documentation, etc. Feedback and comments are welcome here.
  • 2010.March.01 - CGO'10 program is available on-line.
  • 2010.January.28 - Proceedings and slides from GROW'10 and SMART'10 are now available online.
  • 2010.January.4 - Call for participation: GROW'10 and SMART'10 workshops will be held on the 23rd and 24th of January in Pisa, Italy co-located with the HiPEAC conference. Preliminary programs are available: SMART'10 program and GROW'10 program.
  • 2010.January.1 - We wish you all a very happy and prosperous New Year with lots of exciting achievements maybe even related to cTuning technology ;) !
  • 2009.November.11 - Small CCC analysis plugins update available at SVN to speedup queries when dealing with large amount of optimization data in cDatabases (gigabytes of data).
  • 2009.November.7 - Submission deadline for SMART'10 workshop has been extended until the 22nd of November, 2009.
  • 2009.October.2 - We successfully passed the final MILEPOST review and the project is officially over. We would like to thank all the partners from the University of Edinburgh, IBM Haifa, CAPS and ARC for a great collaborative work during last 3 years and cTuning community for a very interesting feedback and extensions! We released all the tools from the project and hope to continue extending them within community-driven cTuning.org. This infrastructure should open up many interesting research opportunities for performance auto-tuning based on statistical and machine learning techniques so we hope to see many more interesting extensions to the MILEPOST/cTuning technology soon ;) !..
  • 2009.September.25 - New CFP for SMART'10 workshop co-located with HiPEAC'10 conference in Pisa, Italy is now available. Prof. Keith Cooper from Rice University kindly agreed to give a keynote talk.
  • 2009.September.22 - Congratulations to Dr.Christophe Dubach who has won a presitigious BCS/CPHC Distinguished Dissertation Award for his thesis "Using Machine-Learning to Efficiently Explore the Architecture/Compiler Co-Design Space" supervised by Prof. Michael O'Boyle. This topic is related to cTuning technology!
  • 2009.July.22 - cTuning-related CFP: SMART'10 and GROW'10 workshops will be co-located with HiPEAC'10 conference in Pisa, Italy at the end of January, 2009. You are warmly invited to submit your novel research results and developments to our workshops! At the websites of these workshops you can find all information about topics, PC, deadlines and submission procedures.
  • 2009.July.08 - The preprint of a paper "Collective Tuning Initiative: automating and accelerating development and optimization of computing systems" describing cTuning infrastructure is now available online (Fur2009).
  • 2009.June.29 - Stable MILEPOST GCC 4.4.0 has been released. Follow further community developments at cTuning GCC ICI page and cTuning development mailing list.
    Next, we plan to use MILEPOST/cTuning technology to enable realistic adaptive parallelization, data partitioning and scheduling for heterogeneous multi-core systems using statistical and machine learning techniques.
  • 2009.June.26 - The pdf of the paper that describes Collective Tuning Infrastructure and cTuning concept (presented at the GCC Summit'09) will be available in a few weeks here.
  • 2009.June.10 - Extended version of the "Collective Optimization" paper (FT2009) describing collective tuning concept has been accepted for ACM Transactions on Architecture and Code Optimization (TACO).
  • 2009.June.01 - After nearly 1 year of developments we released/updated all our open-source collaborative R&D tools:
    • fully redesigned and documented Interactive Compilation Interface v2.0 for GCC 4.4.0 synchronized with the official plugin GCC branch - transforming compilers into plugin-enabled research toolsets
    • MILEPOST GCC 4.4.0 pre-release version at SVN - automating program optimization and compiler optimization heuristic tuning using machine learning
    • Continuous Collective Compilation Framework v2.0 - enabling automatic collaborative program optimization based on statistical and machine learning techniques
    • Collective Benchmark/MiDataSets v1.0 - enabling realistic program optimization research and benchmarking using multiple open-source programs/datasets.

      We also updated Collective Optimization Database with various optimization cases for Intel and AMD processors and comparison of different compilers including GCC, LLVM, Open64, Intel, etc - enabling sharing and reuse of optimization knowledge.

      We would like to thank cTuning community for feedback, help and support! You are welcome to join this community effort to automate program optimization and compiler/architecture design.
  • 2009.April.21 - Several projects to enable automatic fine-grain program optimization and run-time adaptation in GCC using iterative compilation and machine learning (based on cTuning/UNIDAPT/ICI/MILEPOST technology) have been accepted by the Google Summer of Code. You are welcome to join cTuning community and follow or participate in the developments using our dedicated mailing lists.


News archive



You are welcome to join us and participate in discussions, developments or provide feedback and suggestions to extend UNIDAPT Framework.

Locations of visitors to this page