[SERVER-61380] audit jlink values after v4 toolchain is required Created: 10/Nov/21  Updated: 08/Jan/23  Resolved: 27/Dec/22

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Major - P3
Reporter: Daniel Moody Assignee: Alex Neben
Resolution: Done Votes: 0
Labels: post-v4-toolchain
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Assigned Teams:
Server Development Platform
Backwards Compatibility: Fully Compatible
Participants:

 Description   

Over time we have been reducing the jlink values for many builders due to memory limts. We should investigate if the v4 toolchain has added optimization to reduce memory footprints and if we can increase any of these values.



 Comments   
Comment by Alex Neben [ 27/Dec/22 ]

Doing only the link for mongod in v6.0 we get a `Maximum resident set size (kbytes): 10049664`
Doing only the link for mongod in master we get a `Maximum resident set size (kbytes): 15171512`

Since the memory usage increases we cannot increase the jlink value.

Comment by Alex Neben [ 27/Dec/22 ]

 

v6.3
Command being timed: "python3 ./buildscripts/scons.py --build-profile=opt install-devcore --modules= --ninja=disabled -j 400 --link-model=static"
    User time (seconds): 2592.91
    System time (seconds): 415.62
    Percent of CPU this job got: 613%
    Elapsed (wall clock) time (h:mm:ss or m:ss): 8:10.19
    Average shared text size (kbytes): 0
    Average unshared data size (kbytes): 0
    Average stack size (kbytes): 0
    Average total size (kbytes): 0
    Maximum resident set size (kbytes): 15176604
    Average resident set size (kbytes): 0
    Major (requiring I/O) page faults: 21460
    Minor (reclaiming a frame) page faults: 84859547
    Voluntary context switches: 2250486
    Involuntary context switches: 1106191
    Swaps: 0
    File system inputs: 2180440
    File system outputs: 39371272
    Socket messages sent: 0
    Socket messages received: 0
    Signals delivered: 0
    Page size (bytes): 4096
    Exit status: 0 

 

v6.0
Command being timed: "python3 ./buildscripts/scons.py --build-profile=opt install-devcore --modules= --ninja=disabled -j 400 --link-model=static"
    User time (seconds): 1793.62
    System time (seconds): 517.27
    Percent of CPU this job got: 545%
    Elapsed (wall clock) time (h:mm:ss or m:ss): 7:03.56
    Average shared text size (kbytes): 0
    Average unshared data size (kbytes): 0
    Average stack size (kbytes): 0
    Average total size (kbytes): 0
    Maximum resident set size (kbytes): 10221508
    Average resident set size (kbytes): 0
    Major (requiring I/O) page faults: 4199
    Minor (reclaiming a frame) page faults: 79143841
    Voluntary context switches: 1694231
    Involuntary context switches: 1164507
    Swaps: 0
    File system inputs: 74200
    File system outputs: 156514688
    Socket messages sent: 0
    Socket messages received: 0
    Signals delivered: 0
    Page size (bytes): 4096
    Exit status: 0 

Looks like there was a 50% difference so I am going to zoom in on a specific link

 

 

Comment by Alex Neben [ 14/Dec/22 ]

I think this would be good to check out in a timebox but my guess is that the memory footprint won't change much.

Generated at Thu Feb 08 05:52:17 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.