1 2 3<!DOCTYPE html> 4 5<html lang="en"> 6<head> 7 <!-- Google Tag Manager --> 8
8<script>
vendor: 335 bytes, lines 8-12
8(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 9 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 10 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 11 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 12 })(window,document,'script','dataLayer','
12GTM-T6NQSGF
vendor: 3 bytes, line 12
12');
12</script>
12 13 <!-- End Google Tag Manager --> 14 15 <meta charset="UTF-8"/> 16 <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" /> 17 <title>Explore software performance engineering</title> 18 19 <!-- favicon materials from https://realfavicongenerator.net --> 20 <link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png"> 21 <link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png"> 22 <link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png"> 23 <link rel="manifest" href="/site.webmanifest"> 24 <link rel="mask-icon" href="/safari-pinned-tab.svg" color="#5bbad5"> 25 <meta name="msapplication-TileColor" content="#da532c"> 26 <meta name="theme-color" content="#ffffff"> 27 28 <!-- Fonts --> 29 <link rel="preconnect" href="https://fonts.googleapis.com"> 30 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> 31 <link href="https://fonts.googleapis.com/css2?family=Ubuntu:wght@300;700&display=swap" rel="stylesheet"> 32 33
33<script> 34 document.documentElement.dataset.mode = localStorage.getItem("mode") || ""; 35 document.documentElement.dataset.theme = localStorage.getItem("theme") || "light"; 36 </script>
36 37 38 <!-- Styles (based on pydata-sphinx-theme) --> 39 40 <!-- Loaded before other Sphinx assets --> 41 <link href="/sphinx-html/_static/styles/theme.css?digest=9b1a4fa89bdd0e95b23b" rel="stylesheet"> 42 <link href="/sphinx-html/_static/styles/pydata-sphinx-theme.css?digest=9b1a4fa89bdd0e95b23b" rel="stylesheet"> 43 44 <link rel="stylesheet" href="/sphinx-html/_static/vendor/fontawesome/6.1.2/css/all.min.css"> 45 <link rel="preload" as="font" type="font/woff2" crossorigin href="/sphinx-html/_static/vendor/fontawesome/6.1.2/webfonts/fa-solid-900.woff2"> 46 <link rel="preload" as="font" type="font/woff2" crossorigin href="/sphinx-html/_static/vendor/fontawesome/6.1.2/webfonts/fa-brands-400.woff2"> 47 48 <link rel="stylesheet" type="text/css" href="/sphinx-html/_static/design-style.4045f2051d55cab465a707391d5b2007.min.css" /> 49 <link rel="stylesheet" type="text/css" href="/sphinx-html/_static/css/custom.css" /> 50 51 <!-- Eleventy styling --> 52 <link rel="stylesheet" type="text/css" href="/css/prism.css"> 53 <link rel="stylesheet" type="text/css" href="/css/prism-dark.css"> 54 <link rel="stylesheet" type="text/css" href="/css/index.css"> 55 56 <!-- Page styling default is adapted from Cilk Plus Users Guide --> 57 58 <link rel="stylesheet" href="/css/users-guide.css"> 59 60 <link rel="alternate" href="/feed/feed.xml" type="application/atom+xml" title="Fastcode blog"> 61 <link rel="alternate" href="/feed/feed.json" type="application/json" title="Fastcode blog"> 62 63 <!-- Algolia search --> 64 <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@algolia/algoliasearch-netlify-frontend@1/dist/algoliasearchNetlify.css" /> 65
65<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/@algolia/algoliasearch-netlify-frontend@1/dist/algoliasearchNetlify.js"></script>
65 66
66<script type="text/javascript"> 67 algoliasearchNetlify({ 68 appId: 'ZXFQTD503J', 69 apiKey: 'e59239027e233dc2c36cf72538857de0', 70 siteId: '5002b68e-552c-4f2d-9943-12777479a01f', 71 branch: 'master', 72 selector: 'div#search', 73 }); 74 </script>
74 75 76 <!-- Pre-loaded scripts that we'll load fully later --> 77 <link rel="preload" as="script" href="/sphinx-html/_static/scripts/pydata-sphinx-theme.js?digest=9b1a4fa89bdd0e95b23b"> 78 79
79<script data-url_root="./" id="documentation_options" src="/sphinx-html/_static/documentation_options.js"></script>
79 80
80<script src="/sphinx-html/_static/jquery.js"></script>
80 81
81<script src="/sphinx-html/_static/underscore.js"></script>
81 82
82<script src="/sphinx-html/_static/_sphinx_javascript_frameworks_compat.js"></script>
82 83
83<script src="/sphinx-html/_static/doctools.js"></script>
83 84
84<script src="/sphinx-html/_static/design-tabs.js"></script>
84 85 86<!-- Google tag (gtag.js) -->
vendor: 64 bytes, lines 86-87
86 87<script async src="https://www.googletagmanager.com/gtag/js?id=
87G-X1EQ4NYQEC
vendor: 12 bytes, line 87
87"></script>
88<script> 89
vendor: 134 bytes, lines 89-93
89window.dataLayer = window.dataLayer || []; 90 function gtag(){dataLayer.push(arguments);} 91 gtag('js', new Date()); 92 93 gtag('config', '
93G-X1EQ4NYQEC
vendor: 4 bytes, line 93
93');
94</script>
94 95 96 97 <!-- Netlify CMS --> 98
98<script src="https://identity.netlify.com/v1/netlify-identity-widget.js"></script>
98 99</head> 100 101<body data-spy="scroll" data-target="#bd-toc-nav" data-offset="180" data-default-mode=""> 102 <input type="checkbox" class="sidebar-toggle" name="__primary" id="__primary"> 103 <label class="overlay overlay-primary" for="__primary"></label> 104 <input type="checkbox" class="sidebar-toggle" name="__secondary" id="__secondary"> 105 <label class="overlay overlay-secondary" for="__secondary"></label> 106 <div class="search-button__wrapper"> 107 <div class="search-button__overlay"></div> 108 <div class="search-button__search-container"> 109 <form class="bd-search d-flex align-items-center" action="search.html" method="get"> 110 <i class="icon fas fa-search"></i> 111 <input type="search" class="form-control" name="q" id="search-input" placeholder="Search the docs ..." aria-label="Search the docs ..." autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"> 112 <span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd>K</kbd></span> 113 </form> 114 </div> 115 </div> 116 117 <nav class="bd-header navbar navbar-expand-lg navbar-dark bd-navbar justify-content-between px-4" style="font-size: 1.1rem;"> 118<div class="container" style="max-width: 1120px;"> 119 <a class="navbar-brand" href="/"><img class="pr-4" src="/sphinx-html/_static/OpenCilk-icon-330.png"></a> 120 <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarsExample05" aria-controls="navbarsExample05" aria-expanded="false" aria-label="Toggle navigation"> 121 <span class="navbar-toggler-icon"></span> 122 </button> 123 124 <div class="collapse navbar-collapse" id="navbarsExample05"> 125 <ul class="navbar-nav mr-auto"> 126 127 128 <li class="nav-item px-2"> 129 <a class="nav-link" href="/about/about-spe/">About</a> 130 </li> 131 132 133 134 <li class="nav-item px-2"> 135 <a class="nav-link" href="/get-involved/">Get involved</a> 136 </li> 137 138 139 140 <li class="nav-item px-2"> 141 <a class="nav-link" href="/news/read-fastcode">News</a> 142 </li> 143 144 145 146 <li class="nav-item px-2"> 147 <a class="nav-link" href="/events/">Events</a> 148 </li> 149 150 151 </ul> 152 153 <div id="navbar-end"> 154 <div class="navbar-end-item"> 155 <span class="theme-switch-button btn btn-sm btn-outline-primary navbar-btn rounded-circle"> 156 <a class="theme-switch" data-mode="light"><i class="fas fa-sun"></i></a> 157 <a class="theme-switch" data-mode="dark"><i class="far fa-moon"></i></a> 158 <a class="theme-switch" data-mode="auto"><i class="fas fa-adjust"></i></a> 159 </span> 160 </div> 161 <div class="navbar-end-item navbar-end__search-button-container"> 162 163 </div> 164 </div> 165</div> 166</nav> 167 168 169 <div class="bd-container"> 170 <div class="bd-container__inner bd-page-width"> 171 172 <main class="bd-main"> 173 <div class="bd-content" > 174 <div class="bd-article-container"> 175 176 177 178<div> 179 180 181 182 183 <div style="margin-top: 0.5em;"> 184 185 186 187<img class="hero-light pt-4 pb-4 mx-auto" src="/img/Fastcode-Logo.png" width="440"> 188<img class="hero-dark only-dark pt-4 pb-4 mx-auto" src="/img/Fastcode-Logo-dark.png" width="440"> 189<div class="text-center" style="font-size: large;"> 190 <p class="mb-0 mx-auto lead">An open-source community dedicated to advancing software performance engineering</p> 191</div> 192 193<div class="sphinx-bs container pb-4 ml-0" style="min-height: 32rem;"> 194 195 <div style="width: 90%;"> 196 197 198 199 <div id="carouselExampleCaptions" class="carousel slide w-100" data-interval="1000" data-bs-ride="carousel"> 200 201 202 <div class="carousel-inner w-100"> 203 204 <div class="carousel-item active" style="min-height: 18rem; background-color:rgba(4, 48, 101, 0.16);"> 205 206 207 <div class="carousel-caption" style="bottom: none; top: 5.5rem; text-align: left;"> 208 <h1 style="font-size:32px;">Algorithms, compilers, accelerators, and whatever it takes</h1> 209 <p class="lead">Hear the latest in performance engineering at the Fastcode Seminar.</p> 210 <a href="/events/fastcode-seminar/" class="btn px-4 me-md-2" style="text-decoration: none; color: var(--yellow); background-color: var(--blue);">Learn more</a> 211 </div> 212 </div> 213 214 215 <div class="carousel-item " style="min-height: 18rem; background-color:rgba(4, 48, 101, 0.16);"> 216 217 218 <div class="carousel-caption" style="bottom: none; top: 5.5rem; text-align: left;"> 219 <h1 style="font-size:32px;">From "zero" to "performance engineering" in minutes</h1> 220 <p class="lead">Get started on Speedcode, where there'
220s nothing to install.</p> 221 <a href="/about/get-started-spe/" class="btn px-4 me-md-2" style="text-decoration: none; color: var(--yellow); background-color: var(--blue);">Learn more</a> 222 </div> 223 </div> 224 225 226 <div class="carousel-item " style="min-height: 18rem; background-color:rgba(4, 48, 101, 0.16);"> 227 228 229 <div class="carousel-caption" style="bottom: none; top: 5.5rem; text-align: left;"> 230 <h1 style="font-size:32px;">Teach software performance engineering</h1> 231 <p class="lead">OpenCilk makes it easy to teach task-parallel multicore programming.</p> 232 <a href="/get-involved/try-opencilk/" class="btn px-4 me-md-2" style="text-decoration: none; color: var(--yellow); background-color: var(--blue);">Learn more</a> 233 </div> 234 </div> 235 236 237 <div class="carousel-item " style="min-height: 18rem; background-color:rgba(4, 48, 101, 0.16);"> 238 239 240 <div class="carousel-caption" style="bottom: none; top: 5.5rem; text-align: left;"> 241 <h1 style="font-size:32px;">Join the SPE instructors community</h1> 242 <p class="lead">Share your performance-engineering thoughts with other faculty.</p> 243 <a href="/get-involved/instructors-of-spe/" class="btn px-4 me-md-2" style="text-decoration: none; color: var(--yellow); background-color: var(--blue);">Learn more</a> 244 </div> 245 </div> 246 247 248 <div class="carousel-item " style="min-height: 18rem; background-color:rgba(4, 48, 101, 0.16);"> 249 250 251 <div class="carousel-caption" style="bottom: none; top: 5.5rem; text-align: left;"> 252 <h1 style="font-size:32px;">Share your story</h1> 253 <p class="lead">Let Fastcode promote your work and interests in performance engineering.</p> 254 <a href="/get-involved/share-your-story/" class="btn px-4 me-md-2" style="text-decoration: none; color: var(--yellow); background-color: var(--blue);">Learn more</a> 255 </div> 256 </div> 257 258 259 </div> 260 <button class="carousel-control-prev" type="button" data-bs-target="#carouselExampleCaptions" data-bs-slide="prev" style="opacity: 1;"> 261 <h3><</h3> 262 </button> 263 <button class="carousel-control-next" type="button" data-bs-target="#carouselExampleCaptions" data-bs-slide="next" style="opacity: 1;"> 264 <h3>></h3> 265 </button> 266 </div> 267 268 269 270 271 </div> 272 273</div> 274 275<div class="mx-0" style="background-color: var(--pst-color-background); border-top-style: solid; border-top-color: var(--lime);"> 276 277 278<div class="container py-4" style="max-width: 1200px;"> 279 <div class="row justify-content-center"> 280 <div class="col-12"> 281 <div class="text-center"> 282 <h1>Explore software performance engineering</h1> 283 </div> 284 <!-- homepage gallery --> 285 <div class="sphinx-bs container py-4 " style="max-width: 1200px;"> 286 <div class="d-flex row "> 287 288 <div class="d-flex col-lg-6 col-md-12"> 289 <div class="row no-gutters border rounded flex-md-row mb-4 shadow-sm h-md-250 position-relative"> 290 <div class="col-5 p-2 d-flex h-100 flex-column align-items-center justify-content-between" style="background-color: var(--lime); border-top-left-radius: 0.33rem; border-bottom-left-radius: 0.33rem;"> 291 <div class="d-flex text-center"><span class="myCard-header" style="color: var(--midnight);">Go</br>Multicore</span></div> 292 <div class="d-none d-sm-block"><img src="img/multicore-simple.png" style="width:180px; height: auto;"/></div> 293 </div> 294 <div class="col-7 m-0 p-2 d-flex flex-column justify-content-between" style="background-color: var(--yellow); border-top-right-radius: 0.33rem; border-bottom-right-radius: 0.33rem;"> 295
296 <span class="myCard-lead" style="color: var(--midnight);">The end of Moore's Law makes performance engineering a priority for computer-science curricula.</span> 297 <div class="d-flex"><a href="/about/about-spe/" class="btn px-4 me-md-2" style="text-decoration: none; color: var(--yellow); background-color: var(--blue);">Learn more</a></div> 298 299 </div> 300 301 </div> 302 </div> 303 304 <div class="d-flex col-lg-6 col-md-12"> 305 <div class="row no-gutters border rounded flex-md-row mb-4 shadow-sm h-md-250 position-relative"> 306 <div class="col-5 p-2 d-flex h-100 flex-column align-items-center justify-content-between" style="background-color: var(--midnight); border-top-left-radius: 0.33rem; border-bottom-left-radius: 0.33rem;"> 307 <div class="d-flex text-center"><span class="myCard-header" style="color: var(--yellow);">Teach</br>Performance</span></div> 308 <div class="d-none d-sm-block"><img src="img/fib-trace-dark.png" style="width:180px; height: auto;"/></div> 309 </div> 310 <div class="col-7 m-0 p-2 d-flex flex-column justify-content-between" style="background-color: var(--lightteal); border-top-right-radius: 0.33rem; border-bottom-right-radius: 0.33rem;"> 311 312 <span class="myCard-lead" style="color: var(--midnight);">Teach performance engineering with a cutting-edge task-parallel platform that is easy to learn.</span> 313 <div class="d-flex"><a href="/get-involved/try-opencilk/" class="btn px-4 me-md-2" style="text-decoration: none; color: var(--yellow); background-color: var(--blue);">Try OpenCilk</a></div> 314 315 </div> 316 317 </div> 318 </div> 319 320 <div class="d-flex col-lg-6 col-md-12"> 321 <div class="row no-gutters border rounded flex-md-row mb-4 shadow-sm h-md-250 position-relative"> 322 <div class="col-5 p-2 d-flex h-100 flex-column align-items-center justify-content-between" style="background-color: var(--midnight); border-top-left-radius: 0.33rem; border-bottom-left-radius: 0.33rem;"> 323 <div class="d-flex text-center"><span class="myCard-header" style="color: var(--safetyyellow);">Learn</br>Performance</span></div> 324 <div class="d-none d-sm-block"><img src="img/opencilk-inside.png" style="width:180px; height: auto;"/></div> 325 </div> 326 <div class="col-7 m-0 p-2 d-flex flex-column justify-content-between" style="background-color: var(--blue); border-top-right-radius: 0.33rem; border-bottom-right-radius: 0.33rem;"> 327 328 <span class="myCard-lead" style="color: var(--safetyyellow);">Practice making code faster with Speedcode -- no installation required.</span> 329 <div class="d-flex"><a href="/about/get-started-spe/" class="btn px-4 me-md-2" style="text-decoration: none; color: var(--midnight); background-color: var(--yellow);">Try Speedcode</a></div> 330 331 </div> 332 333 </div> 334 </div> 335 336 <div class="d-flex col-lg-6 col-md-12"> 337 <div class="row no-gutters border rounded flex-md-row mb-4 shadow-sm h-md-250 position-relative"> 338 <div class="col-5 p-2 d-flex h-100 flex-column align-items-center justify-content-between" style="background-color: var(--yellow); border-top-left-radius: 0.33rem; border-bottom-left-radius: 0.33rem;"> 339 <div class="d-flex text-center"><span class="myCard-header" style="color: var(--midnight);">Get</br>Involved</span></div> 340 <div class="d-none d-sm-block"><img src="img/toolbox.png" style="width:180px; height: auto;"/></div> 341 </div> 342 <div class="col-7 m-0 p-2 d-flex flex-column justify-content-between" style="background-color: var(--safetyyellow); border-top-right-radius: 0.33rem; border-bottom-right-radius: 0.33rem;"> 343
344 <span class="myCard-lead" style="color: var(--midnight);">Share and learn in a community dedicated to software performance engineering.</span> 345 <div class="d-flex"><a href="/get-involved/" class="btn px-4 me-md-2" style="text-decoration: none; color: var(--yellow); background-color: var(--blue);">Learn more</a></div> 346 347 </div> 348 349 </div> 350 </div> 351 352 </div> 353 </div> 354 </div> 355 356 357 358 359 360 <h1 class="my-4">Featured events</h1> 361 <div class="container" id="featured-3"> 362 <div class="d-flex row"> 363 364 365 366 <div class="col-md-6"> 367 <div class="row p-2 no-gutters border rounded overflow-hidden flex-md-row mb-4 shadow-sm h-md-250 position-relative" style="background-color: var(--pst-color-surface);"> 368 <div class="col-9 d-flex flex-column position-static"> 369 <a href="/events/meta-class-2027/"><h3 class="font-weight-bold mt-0 mb-0">Sign up for meta-class in SPE</h3></a> 370 371 <p style="margin-bottom: 6pt;"><strong>Spring 2027</strong></p> 372 373 374 <p style="line-height: initial; margin-bottom: 12pt;">Registration is OPEN for free online peer-training on teaching SPE</p> 375 376 377 <normal style="display: none;"> 378 379 380 <a href="/tags/events/" class="card-tag">events</a> 381 382 </normal> 383 </div> 384 <div class="col-3 h-100 m-0 p-0 overflow-hidden"> 385 386 <img class="img-fluid" src="/img/logo-circle-onblue-512.png"/> 387 388 </div> 389 </div> 390 </div> 391 392 393 394 <div class="col-md-6"> 395 <div class="row p-2 no-gutters border rounded overflow-hidden flex-md-row mb-4 shadow-sm h-md-250 position-relative" style="background-color: var(--pst-color-surface);"> 396 <div class="col-9 d-flex flex-column position-static"> 397 <a href="/events/ieee-hpec/"><h3 class="font-weight-bold mt-0 mb-0">Fastcode @ HPEC 2026</h3></a> 398 399 <p style="margin-bottom: 6pt;"><strong>Sept 17, 2026</strong></p> 400 401 402 <p style="line-height: initial; margin-bottom: 12pt;">A special session on AI for software performance engineering</p> 403 404 405 <normal style="display: none;"> 406 407 408 <a href="/tags/events/" class="card-tag">events</a> 409 410 </normal> 411 </div> 412 <div class="col-3 h-100 m-0 p-0 overflow-hidden"> 413 414 <img class="img-fluid" src="/img/HPEC-logo.jpg"/> 415 416 </div> 417 </div> 418 </div> 419 420 421 422 423 </div> 424 </div> 425 426 </div> 427</div> 428</div> 429 430 431 </div> 432</div> 433 </div> 434 </div> 435 <footer class="bd-footer-content"> 436 <div class="bd-footer-content__inner"> 437 438 </div> 439 </footer> 440 441 442 </main> 443 </div> 444 </div> 445 446 <div class="footer"> 447 448<footer class="d-flex flex-column py-2"> 449 <div class="d-flex flex-row justify-content-center"> 450 <div class="d-flex mx-4"> 451 <ul class="list-unstyled text-small"> 452 <li><a class="link-secondary" href="/about/about-fastcode/">About Fastcode</a></li> 453 <li><a class="link-secondary" href="/get-involved/contact/">Contact us</a></li> 454 </ul> 455 </div> 456 <div class="d-flex mx-4"> 457 <ul class="list-unstyled text-small"> 458 459 <li><a class="link-secondary" href="/about/get-started-spe/">Learn performance</a></li> 460 <li><a class="link-secondary" href="https://accessibility.mit.edu/">Accessibility</a></li> 461 </ul> 462 </div> 463 <div class="d-flex mx-4"> 464 <ul class="list-unstyled text-small"> 465 <li><a class="link-secondary" href="/get-involved/instructors-of-spe">Teach performance</a></li> 466 <li><a class="link-secondary" href="/get-involved/">Get involved</a></li> 467 </ul> 468 </div> 469 </div> 470</footer> 471</div>
472<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js" integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM" crossorigin="anonymous"></script>
vendor: 1 bytes, line 472
472
473<script async src="https://cdn.jsdelivr.net/npm/[email protected]/dist/masonry.pkgd.min.js" integrity="sha384-GNFwBvfVxBkLMJpYMOABq3c+d3KnQxudP/mGPkzpZSTYykLBNsZEnG2D9G/X/+7D" crossorigin="anonymous"></script>
473 474 475 <!-- Scripts loaded after <body> so the DOM is not blocked --> 476
476<script src="/sphinx-html/_static/scripts/pydata-sphinx-theme.js?digest=9b1a4fa89bdd0e95b23b"></script>
476 477 478 <!-- Netlify CMS --> 479
479<script> 480 if (window.netlifyIdentity) { 481 window.netlifyIdentity.on("init", user => { 482 if (!user) { 483 window.netlifyIdentity.on("login", () => { 484 document.location.href = "/admin/"; 485 }); 486 } 487 }); 488 } 489 </script>
489 490 491</body> 492</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.