<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">I'm teaching a junior-level algorithms course, and assigned my students to implement three different matrix-multiplication algorithms and benchmark them.  So I had to do it myself too :-)<div><br></div><div>In untyped Racket, most of the runs took seconds or minutes, but others (only twice as large, so I would expect roughly 8 times the run-time) have been running for days without result.  So I decided to try porting everything to TR, to see whether that saved any significant (presumably constant-factor) time.  Once I'd gotten everything to type-check in TR, I revised the untyped version to resemble the typed version as closely as possible.</div><div><br></div><div>The results so far: the typed version is taking 20-30 times longer than the untyped version.  Huh?</div><div><br></div><div>I've installed the optimization coach, and am looking through its recommendations.  For the untyped version, it suggested a couple of inlinings.  For the typed version, nothing.</div><br><br><div>
<span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>Stephen Bloch</div><div><a href="mailto:sbloch@adelphi.edu">sbloch@adelphi.edu</a></div></div></span>GPG  key at <a href="http://adelphi.edu/sbloch/sbloch.pubkey.asc">http://adelphi.edu/sbloch/sbloch.pubkey.asc</a></span>
</div>
<br></body></html>