Root signature
Direct3D 12's contract declaring exactly which resources a shader expects and how they are bound to the pipeline.
Older APIs bound textures and buffers loosely, one at a time. Direct3D 12 instead requires you to declare the whole binding layout up front in a root signature: which descriptor tables, root constants and root descriptors exist and in which registers they live. The driver can then validate the layout and optimize work away at every draw call.
A small root signature — few, frequently changed parameters — runs faster than a large one. Vulkan's equivalent is the pipeline layout plus descriptor set layouts. It pairs with the pipeline state object, which freezes the rest of the GPU state into a precompiled blob.