diff options
author | Xiang, Haihao <haihao.xiang@intel.com> | 2010-05-18 12:55:51 +0800 |
---|---|---|
committer | Xiang, Haihao <haihao.xiang@intel.com> | 2010-06-02 13:54:27 +0800 |
commit | a1ae9d0dadd17fcaf57137d00ae2c436f84c2969 (patch) | |
tree | 6319b18f917be85814ba6e1b56183c87d5d5601c | |
parent | 6dff9f6d422a20a68dc0cfb95aa048e3b9cac56f (diff) | |
download | libva-intel-driver-a1ae9d0dadd17fcaf57137d00ae2c436f84c2969.tar.gz libva-intel-driver-a1ae9d0dadd17fcaf57137d00ae2c436f84c2969.tar.bz2 libva-intel-driver-a1ae9d0dadd17fcaf57137d00ae2c436f84c2969.zip |
i965_drv_vidoe: update max_thread for rendering
-rw-r--r-- | i965_render.c | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/i965_render.c b/i965_render.c index 08fa582..dc53529 100644 --- a/i965_render.c +++ b/i965_render.c @@ -329,12 +329,14 @@ i965_subpic_render_wm_unit(VADriverContextP ctx) wm_state->wm4.stats_enable = 0; wm_state->wm4.sampler_state_pointer = render_state->wm.sampler->offset >> 5; - if (IS_IRONLAKE(i965->intel.device_id)) + if (IS_IRONLAKE(i965->intel.device_id)) { wm_state->wm4.sampler_count = 0; /* hardware requirement */ - else + wm_state->wm5.max_threads = 12 * 6 - 1; + } else { wm_state->wm4.sampler_count = (render_state->wm.sampler_count + 3) / 4; + wm_state->wm5.max_threads = 10 * 5 - 1; + } - wm_state->wm5.max_threads = PS_MAX_THREADS - 1; wm_state->wm5.thread_dispatch_enable = 1; wm_state->wm5.enable_16_pix = 1; wm_state->wm5.enable_8_pix = 0; @@ -392,12 +394,14 @@ i965_render_wm_unit(VADriverContextP ctx) wm_state->wm4.stats_enable = 0; wm_state->wm4.sampler_state_pointer = render_state->wm.sampler->offset >> 5; - if (IS_IRONLAKE(i965->intel.device_id)) + if (IS_IRONLAKE(i965->intel.device_id)) { wm_state->wm4.sampler_count = 0; /* hardware requirement */ - else + wm_state->wm5.max_threads = 12 * 6 - 1; + } else { wm_state->wm4.sampler_count = (render_state->wm.sampler_count + 3) / 4; + wm_state->wm5.max_threads = 10 * 5 - 1; + } - wm_state->wm5.max_threads = PS_MAX_THREADS - 1; wm_state->wm5.thread_dispatch_enable = 1; wm_state->wm5.enable_16_pix = 1; wm_state->wm5.enable_8_pix = 0; |