<html xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office"><head><!--[if gte mso 9]><xml><o:OfficeDocumentSettings><o:AllowPNG/><o:PixelsPerInch>96</o:PixelsPerInch></o:OfficeDocumentSettings></xml><![endif]--></head><body><div style="color:#000; background-color:#fff; font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px"><div id="yui_3_16_0_ym19_1_1473949242456_2579" dir="ltr">Running the rebar3 test suite, ct, passing A0 to the VM args is consistently outperforming using any value of A above 0. The test suite does over 1m iops.<br><br>This should not be the be the case, is not the whole point of async threads to improve io throughput?<br><br><br>The test can be setup by doing:<br><br>install a package called time (apt-get install time)<br><br>git clone <a href="https://github.com/erlang/rebar3.git" id="yui_3_16_0_ym19_1_1473949242456_2811">https://github.com/erlang/rebar3.git</a><br>rebar3 install local</div><div dir="ltr" id="yui_3_16_0_ym19_1_1473949242456_2883">export <span style="font-family: "Courier New"; white-space: pre-wrap;" id="yui_3_16_0_ym19_1_1473949242456_2884">REBAR3_ERL_ARGS="+A0 +K true"</span></div><div dir="ltr" id="yui_3_16_0_ym19_1_1473949242456_2889">time -v $(LOCAL_INSTALL_REBAR3_BIN) ct<br></div><div dir="ltr" id="yui_3_16_0_ym19_1_1473949242456_2890">export <span style="font-family: "Courier New"; white-space: pre-wrap;" id="yui_3_16_0_ym19_1_1473949242456_2891">REBAR3_ERL_ARGS="+A1 +K true"</span></div><div dir="ltr" id="yui_3_16_0_ym19_1_1473949242456_2892">time -v $(LOCAL_INSTALL_REBAR3_BIN) ct</div><div dir="ltr" id="yui_3_16_0_ym19_1_1473949242456_2897">export <span style="font-family: "Courier New"; white-space: pre-wrap;" id="yui_3_16_0_ym19_1_1473949242456_2898">REBAR3_ERL_ARGS="+A100 +K true"</span></div><div dir="ltr" id="yui_3_16_0_ym19_1_1473949242456_2899">time -v $(LOCAL_INSTALL_REBAR3_BIN) ct</div><div dir="ltr" id="yui_3_16_0_ym19_1_1473949242456_2899"><br>(rebar3 passes +sbtu as well)</div><div dir="ltr" id="yui_3_16_0_ym19_1_1473949242456_2899"><br></div><div dir="ltr" id="yui_3_16_0_ym19_1_1473949242456_2893">Here is an example of some results:</div><div id="yui_3_16_0_ym19_1_1473949242456_2579"><br></div><pre style="box-sizing: border-box; font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 11.9px; margin-top: 0px; font-stretch: normal; line-height: 1.45; word-wrap: normal; padding: 16px; overflow: auto; border-radius: 3px; color: rgb(51, 51, 51); margin-bottom: 0px !important; background-color: rgb(247, 247, 247);" id="yui_3_16_0_ym19_1_1473949242456_2779"><code style="box-sizing: border-box; font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 11.9px; padding: 0px; margin-top: 0px; margin-bottom: 0px; border-radius: 3px; word-break: normal; white-space:pre-wrap; border: 0px; display: inline; overflow: visible; line-height: inherit; word-wrap: normal; background: transparent;" id="yui_3_16_0_ym19_1_1473949242456_2780">%A0
    Command being timed: "/home/user/.cache/rebar3/bin/rebar3 ct"
    User time (seconds): 203.63
    System time (seconds): 12.12
    Percent of CPU this job got: 128%
    Elapsed (wall clock) time (h:mm:ss or m:ss): 2:48.44
    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): 369744
    Average resident set size (kbytes): 0
    Major (requiring I/O) page faults: 0
    Minor (reclaiming a frame) page faults: 2710315
    Voluntary context switches: 215661
    Involuntary context switches: 219472
    Swaps: 0
    File system inputs: 40
    File system outputs: 1078936
    Socket messages sent: 0
    Socket messages received: 0
    Signals delivered: 0
    Page size (bytes): 4096
    Exit status: 0

%A1
    Command being timed: "/home/user/.cache/rebar3/bin/rebar3 ct"
    User time (seconds): 221.73
    System time (seconds): 17.73
    Percent of CPU this job got: 134%
    Elapsed (wall clock) time (h:mm:ss or m:ss): 2:57.55
    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): 418184
    Average resident set size (kbytes): 0
    Major (requiring I/O) page faults: 0
    Minor (reclaiming a frame) page faults: 2704281
    Voluntary context switches: 2307583
    Involuntary context switches: 306797
    Swaps: 0
    File system inputs: 48
    File system outputs: 1078928
    Socket messages sent: 0
    Socket messages received: 0
    Signals delivered: 0
    Page size (bytes): 4096
    Exit status: 0


%A100
    Command being timed: "/home/user/.cache/rebar3/bin/rebar3 ct"
    User time (seconds): 223.26
    System time (seconds): 18.20
    Percent of CPU this job got: 133%
    Elapsed (wall clock) time (h:mm:ss or m:ss): 3:01.20
    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): 385492
    Average resident set size (kbytes): 0
    Major (requiring I/O) page faults: 0
    Minor (reclaiming a frame) page faults: 2651960
    Voluntary context switches: 2392798
    Involuntary context switches: 404162
    Swaps: 0
    File system inputs: 72
    File system outputs: 1078936
    Socket messages sent: 0
    Socket messages received: 0
    Signals delivered: 0
    Page size (bytes): 4096
    Exit status: 0</code></pre></div></body></html>