[igt-dev] [PATCH i-g-t v5 00/26] Introduce IGT allocator

Zbigniew Kempczyński zbigniew.kempczynski at intel.com
Mon Nov 2 05:38:54 UTC 2020


This series introduce intel-allocator inside IGT.

v2: add comment/commit msg for allocator core
v3: enforce relocs in gem_linear_blits for ppgtt sizes <= 32b
v4: use addresses only from ppgtt range in check-canonical
v5: use relocations as default up to gen12 to avoid loosing
    coverage.

Cc: Dominik Grzegorzek <dominik.grzegorzek at intel.com>
Cc: Chris Wilson <chris at chris-wilson.co.uk>
Cc: Petri Latvala <petri.latvala at intel.com>

Dominik Grzegorzek (5):
  lib/igt_list: igt_hlist implementation.
  lib/igt_map: Introduce igt_map
  lib/intel_allocator_simple: Add simple allocator
  tests/api_intel_allocator: Simple allocator test suite
  tests/gem_linear_blits: Use intel allocator

Zbigniew Kempczyński (21):
  lib/igt_core: Track child process pid and tid
  lib/intel_allocator_random: Add random allocator
  lib/intel_allocator: Add intel_allocator core
  lib/intel_allocator: Try to stop smoothly instead of deinit
  lib/intel_allocator_msgchannel: Scale to 4k of parallel clients
  lib/intel_bufops: Removes handle from allocator, change size
  lib/intel_bufops: Add init with handle and size function
  lib/intel_batchbuffer: Integrate intel_bb with allocator
  lib/intel_batchbuffer: Add tracking intel_buf to intel_bb
  lib/intel_aux_pgtable: Get addresses for aux table from an allocator
  lib/igt_fb: Initialize intel_buf with same size as fb
  tests/api_intel_bb: Modify test to verify intel_bb with allocator
  tests/api_intel_bb: Add compressed->compressed copy
  tests/gem|kms: Remove intel_bb from fixture
  tests/gem_mmap_offset: Use intel_buf wrapper code instead direct
  tests/gem_ppgtt: Adopt test to use intel_bb with allocator
  tests/gem_render_copy_redux: Adopt to use with intel_bb and allocator
  tests/perf.c: Remove buffer from batch
  lib/ioctl_wrappers: Add gem_has_relocations() check
  lib/intel_batchbuffer: Use relocations in intel-bb up to gen12
  tests/api_intel_*: Adopt to use relocations as default up to gen12

 .../igt-gpu-tools/igt-gpu-tools-docs.xml      |   2 +
 lib/Makefile.sources                          |   2 +
 lib/igt_core.c                                |  20 +
 lib/igt_fb.c                                  |  10 +-
 lib/igt_list.c                                |  71 ++
 lib/igt_list.h                                |  50 +-
 lib/igt_map.c                                 | 150 +++
 lib/igt_map.h                                 | 121 +++
 lib/intel_allocator.c                         | 959 ++++++++++++++++++
 lib/intel_allocator.h                         | 136 +++
 lib/intel_allocator_msgchannel.c              | 190 ++++
 lib/intel_allocator_msgchannel.h              | 140 +++
 lib/intel_allocator_random.c                  | 223 ++++
 lib/intel_allocator_simple.c                  | 728 +++++++++++++
 lib/intel_aux_pgtable.c                       |  45 +-
 lib/intel_batchbuffer.c                       | 565 ++++++++---
 lib/intel_batchbuffer.h                       |  28 +-
 lib/intel_bufops.c                            |  61 +-
 lib/intel_bufops.h                            |  20 +-
 lib/ioctl_wrappers.c                          |  43 +
 lib/ioctl_wrappers.h                          |   1 +
 lib/meson.build                               |   5 +
 tests/i915/api_intel_allocator.c              | 557 ++++++++++
 tests/i915/api_intel_bb.c                     | 610 ++++++++---
 tests/i915/gem_caching.c                      |  14 +-
 tests/i915/gem_linear_blits.c                 | 103 +-
 tests/i915/gem_mmap_offset.c                  |   4 +-
 tests/i915/gem_partial_pwrite_pread.c         |  40 +-
 tests/i915/gem_ppgtt.c                        |  11 +
 tests/i915/gem_render_copy.c                  |  31 +-
 tests/i915/gem_render_copy_redux.c            |  23 +-
 tests/i915/perf.c                             |   9 +
 tests/kms_big_fb.c                            |  12 +-
 tests/meson.build                             |   1 +
 34 files changed, 4569 insertions(+), 416 deletions(-)
 create mode 100644 lib/igt_map.c
 create mode 100644 lib/igt_map.h
 create mode 100644 lib/intel_allocator.c
 create mode 100644 lib/intel_allocator.h
 create mode 100644 lib/intel_allocator_msgchannel.c
 create mode 100644 lib/intel_allocator_msgchannel.h
 create mode 100644 lib/intel_allocator_random.c
 create mode 100644 lib/intel_allocator_simple.c
 create mode 100644 tests/i915/api_intel_allocator.c

-- 
2.26.0



More information about the igt-dev mailing list