Skip to content
0:00 / 0:00

#fibers#naughtydog#jobsystem

Параллелизация движка Naughty Dog с использованием файберов

Vadim Chuprakov

63 subscribers • 1 video on Hallway

YouTube
  • Recommended by 2 people: 2 in engineering communities.

Advanced. Deep dive for people who know the field.

17K views3 years ago2 recommendations

Game developmentSystems programmingBuilding a game engineConcurrency and parallelismPerformance and optimization

An in-depth look at Naughty Dog's fiber-based job system and multi-threading architecture used to achieve 60 FPS in The Last of Us Remastered.

В этом докладе подробно рассматриваются модификации игрового движка, необходимые для обеспечения работы The Last of Us Remastered с частотой 60 кадров в секунду на PlayStation 4. Будут затронуты такие темы, как система заданий на основе волокон, используемая Naughty Dog в игре, общая кадрово-ориентированная архитектура движка, используемые в игре шаблоны распределения памяти и наши стратегии борьбы с блокировками. gdcvault.com/play/1022186/Parallelizing-the-Naughty-Dog-Engi…

Why it's here

2 people recommend this

What people say. Engineers frequently recommend this classic GDC talk as a foundational resource for understanding fiber-based job systems in game engines.

Moments people linked to

u/Zealousideal_Win_130in r/gameenginedevs • Recommends

Luth Engine. Fiber-based Vulkan 1.3 game engine built from scratch in C++20 (open source) Hi everyone! I'm finally ready to share the first look at Luth, a game engine I initially started building from scratch as my final university degree project. My focus has been on building a solid architecture rather than just making it look pretty, but the renderer is finally coming together. Here's what's under the hood: # Core Architecture **Fiber-based Job System:** The engine uses fibers (N:M threading) so game code can suspend and resume mid-function without ever blocking an OS thread. Work is distributed via a Chase-Lev work-stealing deque, and the hot path is entirely lock-free. **Naughty…

u/Jimmy-M-420in r/gameenginedevs • Recommends

Fiber Based Job System A few years ago I first watched the talk Parallelizing the Naughty Dog Engine Using Fibers on youtube, and it was a real eye opener. At long last I've gotten round to trying to implement something similar myself, to hopefully provide the foundations of a new and efficient multithreaded game engine. Here is my attempt: https://github.com/JimMarshall35/Fibre-Based-Job-Scheduler I haven't fully put it through its paces yet but initial tentative indications are it is working as i intend it to - though it no doubt has bugs that have yet to reveal themselves. You can see my plan for its architecture here, its not exactly the same as the one described in the Naughty D…
17View on Reddit