RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 2041637 - RFE: add nanosecond display option to oslat
Summary: RFE: add nanosecond display option to oslat
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 9
Classification: Red Hat
Component: realtime-tests
Version: 9.2
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: rc
: 9.2
Assignee: John Kacur
QA Contact: Shizhao Chen
Sujata Kurup
URL:
Whiteboard:
Depends On:
Blocks: 2122374
TreeView+ depends on / blocked
 
Reported: 2022-01-17 22:40 UTC by Clark Williams
Modified: 2023-05-09 08:19 UTC (History)
7 users (show)

Fixed In Version: realtime-tests-2.4-6.el9
Doc Type: Enhancement
Doc Text:
.The `-W` and `--bucket-width` options has been added to the `oslat` program to measure latency With this enhancement, you can specify a latency range for a single bucket at nanoseconds accuracy. Widths that are not multiples of 1000 nanoseconds indicate nanosecond precision. By using the new options, `-W` or `--bucket-width`, you can modify the latency interval between buckets to measure latency within sub-microseconds delay time. For example to set a latency bucket width of 100 nanoseconds for 32 buckets over a duration of 10 seconds to run on CPU range of 1-4 and omit zero bucket size, run the following command: ---- # oslat -b 32 -D 10s -W 100 -z -c 1-4 ---- Note that before using the option, you must determine what level of precision is significant in relation to the error measurement.
Clone Of:
: 2122374 (view as bug list)
Environment:
Last Closed: 2023-05-09 07:30:49 UTC
Type: Bug
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker RHELPLAN-108361 0 None None None 2022-01-17 22:42:15 UTC
Red Hat Product Errata RHBA-2023:2188 0 None None None 2023-05-09 07:30:56 UTC

Description Clark Williams 2022-01-17 22:40:26 UTC
Description of problem:

Latency values in the single-digit microsecond range may be better served in performance measurement applications using nanoseconds as the measurement unit. 

Add a -N/--nsecs option to oslat, similar to cyclictest.

Comment 3 Peter Xu 2022-01-19 03:35:37 UTC
Anyone knows what's the requirement of accuracy (e.g., 1ns, 10ns, 100ns)?

It'll definitely be more challenging if we want to move the measurement to real nano-level, because then we'll need to rule out the oslat overhead, while that was not done in current measurements because currently the smallest bucket is 1us, and that's far bigger than the overhead itself.

Comment 4 John Kacur 2022-01-21 18:00:58 UTC
an 18 22:36:40 <peterx>        jkacur: we need to measure the current overhead of oslat, and we need to know what we want to achieve, imho
Jan 18 22:37:19 <jkacur>        that all makes sense peterx
Jan 18 22:37:37 <peterx>        jkacur: e.g. the code path to fetch tsc, calculate diff, find and put bucket, etc.  note: the overhead can differ a lot if e.g. whether we have cache hit or not on instruction and data accessing
Jan 18 22:38:20 <peterx>        jkacur: since we're talking about ns level, they'll all be in count.  Hopefully 100ns is good enough, then we can simply add a few buckets, but still we'd better measure the overhead first to make sure it's far less than 100ns even if all cache miss
Jan 18 22:39:09 <peterx>        i haven't measured those so i cannot tell; it'll even differ on different hosts, so we'd better make sure it'll be mostly accurate on most
Jan 18 22:41:15 <peterx>        maybe it also does not make sense if we want to make it "really" 1ns level, because it seems extremely hard..
Jan 18 22:41:48 <peterx>        (L1-L3 processor cache, TLB, iTLB, there're just too many uncertainties even running these bucket instructions..)

Comment 9 Crystal Wood 2022-12-09 05:27:28 UTC
Posted upstream patch:
https://lore.kernel.org/linux-rt-users/20221209052254.2609767-1-swood@redhat.com/T/#u

Comment 26 errata-xmlrpc 2023-05-09 07:30:49 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (realtime-tests bug fix and enhancement update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2023:2188


Note You need to log in before you can comment on or make changes to this bug.