On 09/02/18 02:22, Chris Wilson wrote:
Future gen reduce the number of bits we will have available to
differentiate between contexts, so reduce the lifetime of the ID
assignment from that of the context to its current active cycle (i.e.
only while it is pinned for use by the HW, will it have a constant ID).
This means that instead of a max of 2k allocated contexts (worst case
before fun with bit twiddling), we instead have a limit of 2k in flight
contexts (minus a few that have been pinned by the kernel or by perf).

Since we're moving to dynamic assignment would it be reasonable to move the ID to intel_context with an ida per engine class instead of keeping it at the i915_gem_context level? This would allow us to use more contexts as long as they use different classes and it'd take us closer to the way the HW thinks (lrcs on different classes are independent even if they have the same ID). It could also make it easier to use the sw_counter field to expand the maximum number of supported lrcs.
Just a thought, we can always do it as a follow up step.

Intel-gfx mailing list

Reply via email to