FastCode: Difference between revisions

Content deleted Content added
more relevant link
Line 3:
==Structure==
 
The project is organized as a competition divided into challenges. Each challenge takes one function and optimizes it against a number of targets. The project provides tools for [[benchmarking]] and validating each function contribution. One point is given per contribution (maximally one function per target is given points) and ten points are awarded for a target winner. A list with all contributors and their scores is maintained, and at the end of each year a winner is celebrated. [[Borland]], [[Codegear]] and [[Embarcadero Technologies|Embarcadero]], the owners of [[Delphi]] and [[C++ Builder]], have historically sponsored prizes.
 
The majority of participants in the competition are assembler developers who often utilize processor-specific code and extra instruction sets, such as [[MMX (instruction set)|MMX]], [[SSE]], [[SSE2]], [[SSE3]], [[SSSE3]] and [[SSE4]].<ref>http://www.gerixsoft.com/blog/delphi/fastcode</ref>
 
The project enjoys the support of [[Embarcadero]] who recognizes the contributions of the FastCode team and incorporates their code into the codebase for Delphi.<ref>http://blogs.embarcadero.com/nickhodges/2006/11/27/29891</ref> The default [[memory manager]] for [[Embarcadero Delphi]], FastMM4, is the winner of the FastCode Memory Manager challenge.<ref>http://blogs.embarcadero.com/abauer/2005/09/28/21433</ref>
 
The project was first hosted on [[Robert Lee]]'s [[OptimalCode]] site, and its source code's current home is [http://fastcode.sourceforge.net/].
Line 125:
 
== Applications using FastCode ==
An application developed in Delphi or C++ Builder will typically use the default memory manager which is FastMM4. FastCode functions in the RTL have been selected to be the most commonly used ones and an application will also typically use some of these, especially if any string handling is done. Most Delphi/C++ Builder applications will therefore use code developed by the FastCode project. Some examples are [[Skype]], [[FL Studio]], and [[Embarcadero Technologies|Embarcadero]]’s own [[RAD Studio]]. [http://hallvards.blogspot.com/2007/05/use-full-fastmm-consider-donating.html Hallvard's blog] describes FastMM4 and why it is being used as the memory manager in [http://www.theonlinetrader.com/ "The Online Trader"] application.
 
== References ==