cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Benedict (JIRA)" <>
Subject [jira] [Commented] (CASSANDRA-8341) Expose time spent in each thread pool
Date Mon, 01 Dec 2014 13:28:13 GMT


Benedict commented on CASSANDRA-8341:

SEPWorker already grabs the nanoTime on exiting and entering its spin phase, so tracking this
would be pretty much free (we'd need to check it once if we swapped the executor we're working
on without entering a spinning state). Flushing pent up data is pretty trivial; you can set
a max time to buffer, so it ensures it's never more than a few seconds (or millis) out of
date, say. Enough to keep the cost too small to measure.

I'm a little dubious about tracking two completely different properties as the same thing
though. CPUTime cannot be composed with nanoTime sensibly, so we either want to track one
or the other across all executors. Since the other executors are all the ones that do infrequent
expensive work (which is explicitly why they haven't been transitioned to SEP), tracking nanoTime
on them won't be an appreciable cost.

> Expose time spent in each thread pool
> -------------------------------------
>                 Key: CASSANDRA-8341
>                 URL:
>             Project: Cassandra
>          Issue Type: New Feature
>          Components: Core
>            Reporter: Chris Lohfink
>            Priority: Minor
>              Labels: metrics
>         Attachments: 8341.patch, 8341v2.txt
> Can increment a counter with time spent in each queue.  This can provide context on how
much time is spent percentage wise in each stage.  Additionally can be used with littles law
in future if ever want to try to tune the size of the pools.

This message was sent by Atlassian JIRA

View raw message