Content deleted Content added
KolbertBot (talk | contribs) m Bot: HTTP→HTTPS (v475) |
updated information, the old one was outdated |
||
Line 1:
'''FastCode''' is an [[open source programming]] project aimed at providing enhanced [[runtime library]] routines for [[Embarcadero Delphi]] and [[C++Builder|C++ Builder]]. Since it was started in 2003 by [[Dennis Kjaer Christensen]], it has contributed highly optimised functionality to the 32-bit Delphi [[runtime library]] (RTL). FastCode is unique among contributions to commercial compiler runtime libraries for its community-driven and open source nature.
==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, until 2008, a winner
The majority of participants in the competition are assembler developers who often utilize processor-specific 32-bit code and extra instruction sets, such as [[MMX (instruction set)|MMX]], [[Streaming SIMD Extensions|SSE]], [[SSE2]], [[SSE3]], [[SSSE3]] and [[SSE4]].<ref>{{cite web|url=http://www.gerixsoft.com/blog/delphi/fastcode|title=How to Optimize Delphi Application Performance to the Max using FastCode Library|publisher=|accessdate=3 September 2015}}</ref>▼
▲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]], [[Streaming SIMD Extensions|SSE]], [[SSE2]], [[SSE3]], [[SSSE3]] and [[SSE4]].<ref>{{cite web|url=http://www.gerixsoft.com/blog/delphi/fastcode|title=How to Optimize Delphi Application Performance to the Max using FastCode Library|publisher=|accessdate=3 September 2015}}</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>{{cite web|url=http://blogs.embarcadero.com/nickhodges/2006/11/27/29891|title=Nick Hodges|publisher=|accessdate=3 September 2015}}</ref> The default [[memory management|memory manager]] for [[Embarcadero Delphi]], FastMM4, is the winner of the FastCode Memory Manager challenge.<ref name="embarcadero.com">{{cite web|url=http://blogs.embarcadero.com/abauer/2005/09/28/21433|title=The Oracle at Delphi|publisher=|accessdate=3 September 2015}}</ref>
The project was first hosted on Robert Lee's [[OptimalCode]] site, and its source code's
== Testing ==
The FastCode project puts a lot of effort into testing and focus is on providing very high quality software. Testing is split into two categories - testing for correctness and testing for speed.
Line 23 ⟶ 21:
== Targets ==
Testing
The penalty for size is decided for each challenge by a poll.
== List of challenges ==
The FastCode project has run the following challenges [http://fastcode.sourceforge.net/]:
{{Div col|cols=3}}
|