Programming Languages White Papers

Faster Laziness Using Dynamic Pointer Tagging

Overview This paper proposes two tagging strategies: a simple strategy called semi-tagging that seeks to avoid one common source of unpredictable indirect jumps, and a more complex strategy called dynamic pointer-tagging that uses the spare low bits in a pointer to encode information about the pointed-to object. Both of these strategies have been implemented and exhaustively measured in the context of a production compiler, GHC, and the paper contains detailed descriptions of the implementations. The measurements demonstrate significant performance improvements (14% for dynamic pointer-tagging with only a 2% increase in code size), and it further demonstrate that much of the improvement can be attributed to the elimination of mispredicted branch instructions.

Further White Paper Details
PublisherMicrosoft File FormatPDF
Date PublishedApril 2007
FormatWhite Papers   
Topics
Thin clients switch on digitally excluded

Thin clients switch on digitally excluded

Case study: Digital inclusion project tackles social exclusion in Liverpool more

Renault goes multilingual

Renault goes multilingual

Case study: Translation tech turns docs into 23 languages… more


Quick Sitemap Links: