title: What is the runtime cost of include_bytes! or include_str?
body: <p>The <a href="https://doc.rust-lang.org/std/macro.include_bytes.html" rel="nofollow noreferrer"><code>include_bytes!</code></a> and <a href="https://doc.rust-lang.org/std/macro.include_bytes.html" rel="nofollow noreferrer"><code>include_str!</code></a> macros seem like a mystery to me. I understand that the file is included in the binary, but how does it work at runtime?</p>
  
  <ol>
  <li>When is the file loaded into memory?</li>
  <li>Is there any reason not to store the result of <code>include_bytes!</code> / <code>include_str!</code> as a top-level <code>const</code>? Will the file then be in memory for the entire duration of the application runtime?</li>
  <li>Are there any penalties for including a "big" file, other than the binary size?</li>
  </ol>