Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Measure the difference between tmpfs database and NOSYNC database #4130

Closed
sssd-bot opened this issue May 2, 2020 · 0 comments
Closed

Measure the difference between tmpfs database and NOSYNC database #4130

sssd-bot opened this issue May 2, 2020 · 0 comments
Labels
Closed: Fixed Issue was closed as fixed.

Comments

@sssd-bot
Copy link

sssd-bot commented May 2, 2020

Cloned from Pagure issue: https://pagure.io/SSSD/sssd/issue/3097

  • Created at 2016-07-14 17:32:18 by jhrozek
  • Closed as Fixed
  • Assigned to nobody

This is a prerequisite for #3074, see that ticket for more details.

Comments


Comment from jhrozek at 2016-07-29 10:24:20

Fields changed

milestone: NEEDS_TRIAGE => SSSD 1.14.2


Comment from jhrozek at 2016-07-29 14:23:30

Fields changed

rhbz: => 0


Comment from jhrozek at 2016-10-19 21:34:54

Moving tickets that didn't make it into the 1.14.2 release into the next point release.

milestone: SSSD 1.14.2 => SSSD 1.14.3


Comment from jhrozek at 2017-02-02 11:28:53

  1. id performance statistics with both caches in tmpfs:

    stap /sssd/contrib/systemtap/id_perf.stp

    WARNING: Missing unwind data for a module, rerun with 'stap -d /usr/lib64/libtevent.so.0.9.28'
    Total run time of id was: 35260 ms
    Number of zero-level cache transactions: 537
    Time spent in level-0 sysdb transactions: 19004 ms
    Time spent writing to LDB: 17 ms
    Number of LDAP searches: 1114
    Time spent waiting for LDAP: 10819 ms
    LDAP searches breakdown:
    Number of user requests: 1
    Time spent in user requests: 7

         Number of group requests: 534
         Time spent in group requests: 31628
    
         Number of initgroups requests: 1
         Time spent in initgroups requests: 109
    

    Unaccounted time: 5437 ms
    sysdb transaction breakdown:

and the group searches breakdown, since the group requests took the most time:

stap /sssd/contrib/systemtap/nested_group_perf.stp                                                                                                                                                                    
^CTime spent in group sssd_be searches: 33346
Time spent in sdap_nested_group_send/recv: 11106 ms (ratio: 33.30%)
Time spent in zero-level sysdb transactions: 20299 ms (ratio: 60.87%)

Breakdown of sdap_nested_group req (total: 11106 ms)
        sdap_nested_group_process req: 11084
                sdap_nested_group_process_split req: 1110
                        sdap_nested_group_check_cache: 1095
                                sdap_nested_group_sysdb_search_users: 660
                                sdap_nested_group_sysdb_search_groups: 412
                ldap request breakdown of total 9564
                        sdap_nested_group_deref req: 9904
                                sdap_deref_search_send req 9494
                                processing deref results: 402
                        sdap_nested_group_lookup_user req: 35
                        sdap_nested_group_lookup_group req: 0
                        Time spent refreshing unknown members: 35

Breakdown of results processing (total 20299)
        Time spent populating nested members: 18653
                Time spent searching ldb while populating nested members: 15927
        Time spent saving nested members: 1535
        Time spent writing to the ldb: 3 ms
  1. id performance statistics with both caches on a regular partition on an SSSD drive:

    Total run time of id was: 35623 ms
    Number of zero-level cache transactions: 537
    Time spent in level-0 sysdb transactions: 19310 ms
    Time spent writing to LDB: 29 ms
    Number of LDAP searches: 1114
    Time spent waiting for LDAP: 10825 ms
    LDAP searches breakdown:
    Number of user requests: 1
    Time spent in user requests: 12

         Number of group requests: 534
         Time spent in group requests: 31952
    
         Number of initgroups requests: 1
         Time spent in initgroups requests: 116
    

    Unaccounted time: 5488 ms

group requests breakdown

stap /sssd/contrib/systemtap/nested_group_perf.stp                                                                                                                                                                      
^CTime spent in group sssd_be searches: 32576
Time spent in sdap_nested_group_send/recv: 10788 ms (ratio: 33.11%)
Time spent in zero-level sysdb transactions: 19834 ms (ratio: 60.88%)

Breakdown of sdap_nested_group req (total: 10788 ms)
        sdap_nested_group_process req: 10771
                sdap_nested_group_process_split req: 1100
                        sdap_nested_group_check_cache: 1078
                                sdap_nested_group_sysdb_search_users: 689
                                sdap_nested_group_sysdb_search_groups: 355
                ldap request breakdown of total 9266
                        sdap_nested_group_deref req: 9611
                                sdap_deref_search_send req 9199
                                processing deref results: 406
                        sdap_nested_group_lookup_user req: 33
                        sdap_nested_group_lookup_group req: 0
                        Time spent refreshing unknown members: 34

Breakdown of results processing (total 19834)
        Time spent populating nested members: 18198
                Time spent searching ldb while populating nested members: 15424
        Time spent saving nested members: 1529
        Time spent writing to the ldb: 1 ms

In my opinon these measurements show that there is not much value in mounting the cache in tmpfs over mounting it in the async mode. The most time SSSD spends during processing of many large requests is parsing the data from LDAP and searching the cache.


Comment from jhrozek at 2017-02-02 17:02:32

Fields changed

resolution: => fixed
status: new => closed


Comment from jhrozek at 2017-02-24 14:44:36

Metadata Update from @jhrozek:

  • Issue set to the milestone: SSSD 1.14.3
@sssd-bot sssd-bot added the Closed: Fixed Issue was closed as fixed. label May 2, 2020
@sssd-bot sssd-bot closed this as completed May 2, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Closed: Fixed Issue was closed as fixed.
Projects
None yet
Development

No branches or pull requests

1 participant