cTuning concept, collaborative R&D tools, cTuning website and optimization prediction services have been originally developed by Dr. Grigori Fursin (UNIDAPT Group, INRIA, France) and extended during the MILEPOST project. Since 2009, cTuning.org is a open community-driven project to develop self-tuning computing systems. If you have any questions about cTuning.org, don't hesitate to contact us or use cTuning mailing lists. If you need to reference cTuning project, you can reference cTuning website or the following papers FT2009,Fur2009,FMTP2008.
We are very grateful to all our colleagues and users for providing valuable feedback or contributing to the project.
You are warmly welcome to join this community-driven collaborative effort to automate code, compiler and architecture design and optimization and boost innovation and research to enable future self-tuning adaptive computing systems based on heterogeneous, reconfigurable multi-core architectures.
Note: cTuning is an ongoing evolving project - please be patient and tolerant to the community and help us with this collaborative effort!
Typical non-trivial distribution of optimization points in the 2D space of speedups vs code size of a susan_corners program on AMD Athlon64 3700+ architecture with GCC 4.2.2 during automatic program optimization using ccc-run-glob-flags-rnd-uniform plugin from CCC framework with uniform random combinations of more than 100 global compiler flags (each flag has 50% probability to be selected for a given combination of optimizations). Similar data for other benchmark, datasets and architectures is available in the Collective Optimization Database. cTuning technology helps users find or predict optimial optimization points in such complex spaces using "one-button" approach.
We are participating in the following collaborative activities:
- Develop common open-source tools with unified APIs (universal compilers adaptable to any heterogeneous multi-core architecture, computer architecture simulators, adaptive run-time systems) to optimize programs and architectures collectively using iterative compilation, statistical and machine learning techniques.
- Share interesting optimization cases from the community for programs/libraries/OS (compiler optimizations/architecture configurations to improve execution time, code size, architecture size, power consumption, etc) in the Collective Optimization Database to help users optimize their systems, enable replicable collaborative research and enable further analysis using statistical and machine learning techniques.
- Enable collaborative research using cTools to automate and simplify the process of developing and optimizing new computer architectures, compilers, operating systems and programming environments using statistical analysis, machine learning, dynamic adaptation and bio-inspired techniques. We believe that our adaptive approaches are critical to overcome the complexity of computing systems and improve their performance, power consumption, system size and fault-tolerance automatically while reducing their cost and time to market.
|
News
|
- 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.17 - We participated in discussions to include plugin system similar to ICI to mainline GCC for a long time and finally GCC 4.5 will feature a low-level plugin system. We are now synchronizing high-level ICI/MILEPOST with the mainline to be able to reuse all our available plugins. We also develop several new plugins within Google Summer of Code'2009 to enable XML representation of the compilation flow, fine-grain program optimizations and instrumentation, automatic tuning of optimization heuristic based on machine learning, and function-level run-time adaptation. Comparison of GCC low-level and high-level ICI plugins is available here. The ICI development and discussions mailing list is available 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.03-10 - We gave several talks/demos/tutorials about cTuning at the HiPEAC Computing week (Infineon, Munich, Germany) and GCC Summit (Montreal, Canada).
- 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.27 - We gave a talk at the University of Illinois at Urbana-Champaign about Collective Tuning Initiative and tools and MILEPOST project ("Collective Optimization, run-time adaptation and machine learning"). Presentation is available here. We would like to thank all the UIUC colleagues for a very interesting and useful feedback.
- 2009.April.23 - Preview version of the optimization predictor based on static program features and machine learning (to improve program execution time, code size, etc) is now available on-line. It is an on-going project, so please be patient. Comments are welcome!
|
|