On 04/26/2013 04:11 PM, Roland Scheidegger wrote:
Am 27.04.2013 00:03, schrieb Brian Paul:
---
src/gallium/drivers/llvmpipe/lp_query.c | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/gallium/drivers/llvmpipe/lp_query.c
b/src/gallium/drivers/llvmpipe/lp_query.c
index 96e1e3f..fcb5c6a 100644
--- a/src/gallium/drivers/llvmpipe/lp_query.c
+++ b/src/gallium/drivers/llvmpipe/lp_query.c
@@ -38,6 +38,7 @@
#include "lp_flush.h"
#include "lp_fence.h"
#include "lp_query.h"
+#include "lp_screen.h"
#include "lp_state.h"
@@ -92,6 +93,7 @@ llvmpipe_get_query_result(struct pipe_context *pipe,
boolean wait,
union pipe_query_result *vresult)
{
+ struct llvmpipe_screen *screen = llvmpipe_screen(pipe->screen);
struct llvmpipe_query *pq = llvmpipe_query(q);
uint64_t *result = (uint64_t *)vresult;
int i;
@@ -118,12 +120,12 @@ llvmpipe_get_query_result(struct pipe_context *pipe,
switch (pq->type) {
case PIPE_QUERY_OCCLUSION_COUNTER:
- for (i = 0; i< LP_MAX_THREADS; i++) {
+ for (i = 0; i< screen->num_threads; i++) {
*result += pq->count[i];
}
break;
case PIPE_QUERY_TIMESTAMP:
- for (i = 0; i< LP_MAX_THREADS; i++) {
+ for (i = 0; i< screen->num_threads; i++) {
if (pq->count[i]> *result) {
*result = pq->count[i];
}
Series looks good to me, though I'm not entirely sure how far we expect
scaling that way to make sense.
Yes, I reminded him of Amdahl's Law.
-Brian
_______________________________________________
mesa-dev mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/mesa-dev