Content deleted Content added
DanielPharos (talk | contribs) m →Contributions to Delphi RTL: Added working archive link |
m →Applications using FastCode: HTTP to HTTPS for Blogspot |
||
(3 intermediate revisions by 3 users not shown) | |||
Line 1:
{{Short description|Project to optimize code for Embarcadero compilers}}
'''FastCode''' is an [[open source programming]] project that aims to provide optimized runtime library routines for [[Embarcadero Delphi]] and [[C++Builder|C++ Builder]]. This community-driven project was started in 2003 by [[Dennis Kjaer Christensen]] and has since contributed optimized functionality to the 32-bit Delphi runtime library (RTL).
Line 8 ⟶ 9:
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 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}}{{Dead link|date=July 2025 |bot=InternetArchiveBot |fix-attempted=yes }}</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|archive-date=12 August 2015|archive-url=https://web.archive.org/web/20150812002619/http://blogs.embarcadero.com/abauer/2005/09/28/21433|url-status=dead}}</ref>
The project was first hosted on Robert Lee's [[OptimalCode]] site, and its source code's home page is [
== Testing ==
Line 27 ⟶ 28:
== List of challenges ==
The FastCode project has run the following challenges [
{{Div col|colwidth=22em}}
*AES ([[Advanced Encryption Standard]])
Line 106 ⟶ 107:
== The FastCode Library ==
All the challenge winners are included in the FastCode library (
When calling functions directly it is entirely up to the application developer to call the version of a function he thinks is fastest.
Line 124 ⟶ 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]]. [
== References ==
|