~/talk

File I/O for Game Developers: Past, Present, and Future with C++

slides:none on file

Explains concrete claims: C++ fstream often wraps C buffered IO with ~4 kilobyte buffers (BUFSIZ), that extra copies cost ~20% of IO, NVMe random latency ~300 μs versus SATA ~800 μs, and mmap or file-mapping removes those copies. Describes proposals and tools: #embed for compile‑time resources, P1031/P1041 for low‑level file handles and mmap‑style mapping, and Microsoft DirectStorage (Windows 11 + high‑end GPU) to bypass RAM. Recounts implemented hacks (memory‑map + touch threads) and measured wins and tradeoffs (address‑space reservation, prefetching).

AI-written summary · about

  1. 0:00Introduction
  2. 2:46Why files and file systems
  3. 10:13Storage evolution: cassettes to floppies
  4. 17:24FAT16 and POSIX file systems
  5. 27:01Caching and buffering in I/O
  6. 36:54Buffered I/O challenges
  7. 41:06Memory mapping and virtual memory
  8. 47:49C++ future: hash_embed
  9. 50:45C++ future: low-level I/O library
  10. 54:34Summary
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.