Intel Working On "Small BAR" Linux Driver Support For DG2/Alchemist
Intel's forthcoming Arc Graphics "Alchemist" (DG2) graphics cards do support Resizable BAR functionality as covered when they previously published Linux patches for it. They are also now working on a DG2 feature for "small BAR" support.
The Small BAR case is where the final BAR size might not span the entire device local memory size (all of the dedicated vRAM). If only a portion of that dedicated video memory is CPU accessible but still more than the 256MB seen without Resizable BAR support, Intel developers want to expand on their user-space driver interface to better handle this Small BAR scenario.
They are looking at adding a new GEM memory management flag "NEEDS_CPU_ACCESS" to indicate whether a buffer object will require CPU access. Thus if this GEM flag is set, the driver will try to ensure that buffer object is placed in the device local memory where it's in the BAR range for being CPU accessible. Basically if Resizable BAR doesn't cover all of the dedicated vRAM, the driver will use this "needs CPU access" flag to prioritize those buffer objects to land in the "Small BAR" area so they are visible to the CPU.
Intel's open-source Linux graphics driver engineers are still working on this Small BAR support driver code while this week they sent out the proposed documentation around the planned user-space API addition for covering this "Small BAR" behavior.
Intel's Linux crew remains very busy working on their DG2/Alchemist open-source driver support ahead of Arc Graphics desktop cards in Q2 and workstation cards due in Q3.
The Small BAR case is where the final BAR size might not span the entire device local memory size (all of the dedicated vRAM). If only a portion of that dedicated video memory is CPU accessible but still more than the 256MB seen without Resizable BAR support, Intel developers want to expand on their user-space driver interface to better handle this Small BAR scenario.
They are looking at adding a new GEM memory management flag "NEEDS_CPU_ACCESS" to indicate whether a buffer object will require CPU access. Thus if this GEM flag is set, the driver will try to ensure that buffer object is placed in the device local memory where it's in the BAR range for being CPU accessible. Basically if Resizable BAR doesn't cover all of the dedicated vRAM, the driver will use this "needs CPU access" flag to prioritize those buffer objects to land in the "Small BAR" area so they are visible to the CPU.
Intel's open-source Linux graphics driver engineers are still working on this Small BAR support driver code while this week they sent out the proposed documentation around the planned user-space API addition for covering this "Small BAR" behavior.
Intel's Linux crew remains very busy working on their DG2/Alchemist open-source driver support ahead of Arc Graphics desktop cards in Q2 and workstation cards due in Q3.
11 Comments