All of lore.kernel.org
 help / color / mirror / Atom feed
From: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
To: intel-gfx@lists.freedesktop.org
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Subject: [RFC i-g-t] GEM features into feat_profile.json
Date: Wed, 31 May 2017 15:23:12 +0300	[thread overview]
Message-ID: <1496233392.4267.13.camel@linux.intel.com> (raw)

Hello,

I went through the gem_* tests from intel-gpu-tools and categorized
them into roughly categories "X | X robustness | X performance" ready
to be added to the feat_profile.json.

Lets open a discussion which ones should go where. I tried to place a
single test to under only one category and I'm kind of hopeful that
we'll have the ability to add "depends_on" to create super features in
the future, instead of placing a single test under multiple categories.

I didn't check all the subtests nor wildcard matching with other tests,
this is just all the test names placed under some categories.

Regards, Joonas

PS. I'm still bit unsure where to place gem_spin_batch.c while tests
gem_pipe_control_store_loop, gem_bad_address, gem_bad_batch,
gem_bad_blit, gem_bad_length and gem_bad_reloc seem more like hardware
sanity checks.
---
    "Driver API" : {
        "include_tests": "gem_basic",
    },
    "Driver API robustness" : {
        "include_tests": "gem_close_race|gem_fd_exhaustion|gem_eio",
    },
    "Basic IOCTLs": {
        "include_tests": "gem_create|gem_busy|gem_unref_active_buffers",
    },
    "R/W contention" : {
       "include_tests": "gem_gtt_cpu_tlb|gem_pread_after_blit|gem_pwrite_snooped|gem_readwrite|gem_caching|gem_exec_flush|gem_stress",
    },
    "R/W concurrency" : {
        "include_tests": "gem_concurrent_all|gem_concurrent_blit|gem_exec_parallel|gem_partial_pwrite_pread",
    },
    "Relocations" : {
        "include_tests": "gem_exec_reloc|gem_cpu_reloc|gem_persistent_relocs",
    },
    "Relocations robustness" : {
        "include_tests": "gem_exec_faulting_reloc|gem_exec_bad_domains|gem_reloc_overflow|gem_reloc_vs_gpu",
    },
    "Command streamer robustness" : {
        "include_tests": "gem_cs_tlb|gem_cs_prefetch",
    },
    "Contexts" : {
        "include_tests": "gem_ctx_basic|gem_ctx_exec|gem_ctx_param",
    },
    "Context robustness" : {
       "include_tests": "gem_ctx_create|gem_ctx_bad_destroy|gem_ctx_bad_exec|gem_ctx_switch|gem_ctx_thrash",
    },
    "Interrupts robustness" : {
       "include_tests": "gem_double_irq_loop|gem_ring_sync_loop|gem_sync",
    },
    "Eviction" : {
       "include_tests": "gem_evict|gem_exec_gttfill|gem_shrink",
    },
    "Execbuf IOCTL" : {
       "include_tests": "gem_exec_basic|gem_exec_alignment|gem_exec_lut_handle|gem_lut_handle",
    },
    "Execbuf IOCTL performance" : {
       "include_tests": "gem_exec_blt|gem_exec_create|gem_exec_latency|gem_exec_nop|gem_exec_reuse",
    },
    "Execbuf IOCTL robustness" : {
       "include_tests": "gem_exec_params|gem_fenced_exec_thrash|gem_exec_whisper",
    },
    "Suspend and resume" : {
       "include_tests": "gem_exec_suspend",
    },
    "Scheduler" : {
       "include_tests": "gem_exec_schedule",
    },
    "Asynchronous execution" : {
       "include_tests": "gem_exec_async",
    },
    "Command parser" : {
       "include_tests": "gem_exec_parse",
    },
    "Fences, implicit" : {
       "include_tests": "gem_exec_await",
    },
    "Fences, explicit" : {
       "include_tests": "gem_exec_fence",
    },
    "Tiling" : {
       "include_tests": "gem_fence_upload|gem_set_tiling_vs_blt|gem_set_tiling_vs_gtt|gem_set_tiling_vs_pwrite|gem_tiled_pread_basic|gem_tiled_pread_pwrite|gem_tiled_wb|gem_tiled_wc|gem_tiling_max_stride",
    },
    "Tiling robustness" : {
       "include_tests": "gem_fence_thrash|gem_gtt_hog|gem_render_tiled_blits|gem_threaded_access_tiled|gem_tiled_blits|gem_tiled_fence_blits|gem_tiled_swapping|gem_tiled_partial_pwrite_pread|gem_unfence_active_buffers",
    },
    "GGTT contention" : {
       "include_tests": "gem_gtt_hog|gem_linear_blits",
    },
    "Global objects" : {
       "include_tests": "gem_flink_basic",
    },
    "Global objects robustness" : {
       "include_tests": "gem_flink_race",
    },
    "Workloads" : {
       "include_tests": "gem_storedw_batches_loop|gem_storedw_loop",
    },
    "Workloads, GPGPU" : {
       "include_tests": "gem_gpgpu_fill",
    },
    "Workloads, media" : {
       "include_tests": "gem_media_fill",
    },
    "Workloads, render" : {
       "include_tests": "gem_render_copy",
    },
    "Workloads robustness, render" : {
       "include_tests": "gem_render_copy_redux|gem_render_linear_blits",
    },
    "Workloads robustness" : {
       "include_tests": "gem_ringfill",
    },
    "GGTT performance" : {
       "include_tests": "gem_gtt_speed",
    },
    "Hang recovery" : {
       "include_tests": "gem_hang|gem_hangcheck_forcewake|gem_exec_capture",
    },
    "Large object support" : {
       "include_tests": "gem_exec_big|gem_largeobject",
    },
    "Purging objects" : {
       "include_tests": "gem_madvise",
    },
    "mmap IOCTL" : {
       "include_tests": "gem_mmap|gem_mmap_gtt|gem_mmap_wc",
    },
    "mmap IOCTL robustness" : {
       "include_tests": "gem_mmap_offset_exhaustion",
    },
    "MOCS" : {
       "include_tests": "gem_mocs_settings",
    },
    "Secure batches robustness" : {
       "include_tests": "gem_non_secure_batch",
    },
    "Pinning" : {
       "include_tests": "gem_pin",
    },
    "PPGTT" : {
       "include_tests": "gem_ppgtt",
    },
    "R/W performance" : {
       "include_tests": "gem_pread|gem_pwrite|gem_pwrite_pread|gem_read_read_speed",
    },
    "Register read IOCTL" : {
       "include_tests": "gem_reg_read|gem_workarounds",
    },
    "Request retirement" : {
       "include_tests": "gem_request_retire",
    },
    "Reset statistics IOCTL" : {
       "include_tests": "gem_reset_stats",
    },
    "Sequence number wrapping" : {
       "include_tests": "gem_seqno_wrap",
    },
    "Soft pinning API" : {
       "include_tests": "gem_softpin",
    },
    "Stolen memory" : {
       "include_tests": "gem_stolen",
    },
    "Streaming writes" : {
       "include_tests": "gem_streaming_writes",
    },
    "User pointers API" : {
       "include_tests": "gem_userptr_blits",
    },
    "Wait IOCTL" : {
       "include_tests": "gem_wait",
    },
    "Wait IOCTL" : {
       "include_tests": "gem_wait",
    },
    "Semaphores robustness" : {
       "include_tests": "gem_write_read_ring_switch",
    }
-- 
Joonas Lahtinen
Open Source Technology Center
Intel Corporation
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

             reply	other threads:[~2017-05-31 12:23 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-05-31 12:23 Joonas Lahtinen [this message]
2017-05-31 12:58 ` [RFC i-g-t] GEM features into feat_profile.json Chris Wilson
2017-05-31 13:45   ` Joonas Lahtinen
2017-05-31 14:02     ` Chris Wilson
2017-06-01  6:12       ` Daniel Vetter

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1496233392.4267.13.camel@linux.intel.com \
    --to=joonas.lahtinen@linux.intel.com \
    --cc=daniel.vetter@ffwll.ch \
    --cc=intel-gfx@lists.freedesktop.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.