Re: Connect-IB not performing as well as ConnectX-3 with iSER

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I bisected the kernel and it looks like the performance of the
Connect-IB card goes down and the performance of the ConnectX-3 card
goes up with this commit (but I'm not sure why this would cause this):

ab46db0a3325a064bb24e826b12995d157565efb is the first bad commit
commit ab46db0a3325a064bb24e826b12995d157565efb
Author: Jiri Olsa <jolsa@xxxxxxxxxx>
Date:   Thu Dec 3 10:06:43 2015 +0100

   perf stat: Use perf_evlist__enable in handle_initial_delay

   No need to mimic the behaviour of perf_evlist__enable, we can use it
   directly.

   Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx>
   Tested-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
   Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
   Cc: David Ahern <dsahern@xxxxxxxxx>
   Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
   Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
   Link: http://lkml.kernel.org/r/1449133606-14429-5-git-send-email-jolsa@xxxxxxxxxx
   Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

:040000 040000 67e69893bf6d47b372e08d7089d37a7b9f602fa7
b63d9b366f078eabf86f4da3d1cc53ae7434a949 M      tools

4.4.0_rc2_3e27c920
sdc;10.218.128.17;5291495;1322873;15853
sde;10.218.202.17;4966024;1241506;16892
sdh;10.218.203.17;4980471;1245117;16843
sdk;10.218.204.17;4966612;1241653;16890
sdd;10.219.128.17;5060084;1265021;16578
sdf;10.219.202.17;5065278;1266319;16561
sdi;10.219.203.17;5047600;1261900;16619
sdl;10.219.204.17;5036992;1259248;16654
sdn;10.220.128.17;3775081;943770;22221
sdg;10.220.202.17;3758336;939584;22320
sdj;10.220.203.17;3792832;948208;22117
sdm;10.220.204.17;3771516;942879;22242

4.4.0_rc2_ab46db0a
sdc;10.218.128.17;3792146;948036;22121
sdf;10.218.202.17;3738405;934601;22439
sdj;10.218.203.17;3764239;941059;22285
sdl;10.218.204.17;3785302;946325;22161
sdd;10.219.128.17;3762382;940595;22296
sdg;10.219.202.17;3765760;941440;22276
sdi;10.219.203.17;3873751;968437;21655
sdm;10.219.204.17;3769483;942370;22254
sde;10.220.128.17;5022517;1255629;16702
sdh;10.220.202.17;5018911;1254727;16714
sdk;10.220.203.17;5037295;1259323;16653
sdn;10.220.204.17;5033064;1258266;16667

----------------
Robert LeBlanc
PGP Fingerprint 79A2 9CA4 6CC4 45DD A904  C70E E654 3BB2 FA62 B9F1


On Wed, Jun 8, 2016 at 9:33 AM, Robert LeBlanc <robert@xxxxxxxxxxxxx> wrote:
> With 4.1.15, the C-IB card gets about 1.15 MIOPs, while the CX3 gets
> about 0.99 MIOPs. But starting with the 4.4.4 kernel, the C-IB card
> drops to 0.96 MIOPs and the CX3 card jumps to 1.25 MIOPs. In the 4.6.0
> kernel, both cards drop, the C-IB to 0.82 MIOPs and the CX3 to 1.15
> MIOPs. I confirmed this morning that the card order was swapped on the
> 4.6.0 kernel and it was not different ports of the C-IB performing
> differently, but different cards.
>
> Given the limitations of the PCIe 8x port for the CX3, I think 1.25
> MIOPs is about the best we can do there. In summary, the performance
> of the C-IB card drops after 4.1.15 and gets progressively worse as
> the kernels increase. The CX3 card peaks at the 4.4.4 kernel and
> degrades a bit on the 4.6.0 kernel.
>
> Increasing the IO depth by adding jobs does not improve performance,
> it actually decreases performance. Based on an average of 4 runs at
> each job number from 1-80, the Goldilocks zone is 31-57 jobs where the
> difference in performance is less than 1%.
>
> Similarly, increasing block request size does not really change the
> figures to reach line speed.
>
> Here is the output of the 4.6.0 kernel with 4M bs:
> sdc;10.218.128.17;3354638;819;25006
> sdf;10.218.202.17;3376920;824;24841
> sdm;10.218.203.17;3367431;822;24911
> sdk;10.218.204.17;3378960;824;24826
> sde;10.219.128.17;3366350;821;24919
> sdl;10.219.202.17;3379641;825;24821
> sdg;10.219.203.17;3391254;827;24736
> sdn;10.219.204.17;3401706;830;24660
> sdd;10.220.128.17;4597505;1122;18246
> sdi;10.220.202.17;4594231;1121;18259
> sdj;10.220.203.17;4667598;1139;17972
> sdh;10.220.204.17;4628197;1129;18125
>
> The CPU on the target is a kworker thread at 96%, but no single
> processor over 15%. The initiator has low fio CPU utilization (<10%)
> for each job and no single CPU over 22% utilized.
>
> I have tried manually spreading the IRQ affinity over the processors
> of the respective NUMA nodes and there was no noticeable change in
> performance when doing so.
>
> Loading ib_iser on the initiator shows maybe a slight increase in performance:
>
> sdc;10.218.128.17;3396885;849221;24695
> sdf;10.218.202.17;3429240;857310;24462
> sdi;10.218.203.17;3454234;863558;24285
> sdm;10.218.204.17;3391666;847916;24733
> sde;10.219.128.17;3403914;850978;24644
> sdh;10.219.202.17;3491034;872758;24029
> sdk;10.219.203.17;3390569;847642;24741
> sdl;10.219.204.17;3498898;874724;23975
> sdd;10.220.128.17;4664743;1166185;17983
> sdg;10.220.202.17;4624880;1156220;18138
> sdj;10.220.203.17;4616227;1154056;18172
> sdn;10.220.204.17;4619786;1154946;18158
>
> I'd like to see the C-IB card at 1.25+ MIOPs (I know that the target
> can do that performance and we were limited on the CX3 by the PCIe bus
> which isn't an issue with the 16x C-IB card for a single port).
> Although the loss of performance in the CX3 card is concerning, I'm
> mostly focused on the C-IB card at the moment. I will probably start
> bisecting 4.1.15 to 4.4.4 to see if I can identify when the
> performance of the C-IB card degrades.
> ----------------
> Robert LeBlanc
> PGP Fingerprint 79A2 9CA4 6CC4 45DD A904  C70E E654 3BB2 FA62 B9F1
>
>
> On Wed, Jun 8, 2016 at 7:52 AM, Max Gurtovoy <maxg@xxxxxxxxxxxx> wrote:
>>
>>
>> On 6/8/2016 1:37 AM, Robert LeBlanc wrote:
>>>
>>> On the 4.1.15 kernel:
>>> sdc;10.218.128.17;3971878;992969;21120
>>> sdd;10.218.202.17;3967745;991936;21142
>>> sdg;10.218.203.17;3938128;984532;21301
>>> sdk;10.218.204.17;3952602;988150;21223
>>> sdn;10.219.128.17;4615719;1153929;18174
>>> sdf;10.219.202.17;4622331;1155582;18148
>>> sdi;10.219.203.17;4602297;1150574;18227
>>> sdl;10.219.204.17;4565477;1141369;18374
>>> sde;10.220.128.17;4594986;1148746;18256
>>> sdh;10.220.202.17;4590209;1147552;18275
>>> sdj;10.220.203.17;4599017;1149754;18240
>>> sdm;10.220.204.17;4610898;1152724;18193
>>>
>>> On the 4.6.0 kernel:
>>> sdc;10.218.128.17;3239219;809804;25897
>>> sdf;10.218.202.17;3321300;830325;25257
>>> sdm;10.218.203.17;3339015;834753;25123
>>> sdk;10.218.204.17;3637573;909393;23061
>>> sde;10.219.128.17;3325777;831444;25223
>>> sdl;10.219.202.17;3305464;826366;25378
>>> sdg;10.219.203.17;3304032;826008;25389
>>> sdn;10.219.204.17;3330001;832500;25191
>>> sdd;10.220.128.17;4624370;1156092;18140
>>> sdi;10.220.202.17;4619277;1154819;18160
>>> sdj;10.220.203.17;4610138;1152534;18196
>>> sdh;10.220.204.17;4586445;1146611;18290
>>>
>>> It seems that there is a lot of changes between the kernels. I had
>>> these kernels already on the box and I can bisect them if you think it
>>> would help. It is really odd that port 2 on the Connect-IB card did
>>> better than port 1 on the 4.6.0 kernel.
>>> ----------------
>>> Robert LeBlanc
>>> PGP Fingerprint 79A2 9CA4 6CC4 45DD A904  C70E E654 3BB2 FA62 B9F1
>>
>>
>> so in these kernels you get better performance with the C-IB than CX3 ?
>> we need to find the bottleneck.
>> Can you increase the iodepth and/or block size to see if we can reach the
>> wire speed.
>> another try is to load ib_iser with always_register=N.
>>
>> what is the cpu utilzation in both initiator/target ?
>> did you spread the irq affinity ?
>>
>>
>>>
>>>
>>> On Tue, Jun 7, 2016 at 10:48 AM, Robert LeBlanc <robert@xxxxxxxxxxxxx>
>>> wrote:
>>>>
>>>> The target is LIO (same kernel) with a 200 GB RAM disk and I'm running
>>>> fio as follows:
>>>>
>>>> fio --rw=read --bs=4K --size=2G --numjobs=40 --name=worker.matt
>>>> --group_reporting --minimal |  cut -d';' -f7,8,9
>>>>
>>>> All of the paths are set the same with noop and nomerges to either 1
>>>> or 2 (doesn't make a big difference).
>>>>
>>>> I started looking into this when the 4.6 kernel wasn't performing as
>>>> well as we were able to get the 4.4 kernel to work. I went back to the
>>>> 4.4 kernel and I could not replicate the 4+ million IOPs. So I started
>>>> breaking down the problem to smaller pieces and found this anomaly.
>>>> Since there hasn't been any suggestions up to this point, I'll check
>>>> other kernel version to see if it is specific to certain kernels. If
>>>> you need more information, please let me know.
>>>>
>>>> Thanks,
>>>> ----------------
>>>> Robert LeBlanc
>>>> PGP Fingerprint 79A2 9CA4 6CC4 45DD A904  C70E E654 3BB2 FA62 B9F1
>>>>
>>>>
>>>> On Tue, Jun 7, 2016 at 6:02 AM, Max Gurtovoy <maxg@xxxxxxxxxxxx> wrote:
>>>>>
>>>>>
>>>>>
>>>>> On 6/7/2016 1:36 AM, Robert LeBlanc wrote:
>>>>>>
>>>>>>
>>>>>> I'm trying to understand why our Connect-IB card is not performing as
>>>>>> well as our ConnectX-3 card. There are 3 ports between the two cards
>>>>>> and 12 paths to the iSER target which is a RAM disk.
>>>>>
>>>>>
>>>>>
>>>>> <snip>
>>>>>
>>>>>>
>>>>>> When I run fio against each path individually, I get:
>>>>>
>>>>>
>>>>>
>>>>> What is the scenario (bs, numjobs, iodepth) for each run ?
>>>>> Which target do you use ? backing store ?
>>>>>
>>>>>
>>>>>>
>>>>>> disk;target IP;bandwidth,IOPs,Execution time
>>>>>> sdn;10.218.128.17;5053682;1263420;16599
>>>>>> sde;10.218.202.17;5032158;1258039;16670
>>>>>> sdh;10.218.203.17;4993516;1248379;16799
>>>>>> sdk;10.218.204.17;5081848;1270462;16507
>>>>>> sdc;10.219.128.17;3750942;937735;22364
>>>>>> sdf;10.219.202.17;3746921;936730;22388
>>>>>> sdi;10.219.203.17;3873929;968482;21654
>>>>>> sdl;10.219.204.17;3841465;960366;21837
>>>>>> sdd;10.220.128.17;3760358;940089;22308
>>>>>> sdg;10.220.202.17;3866252;966563;21697
>>>>>> sdj;10.220.203.17;3757495;939373;22325
>>>>>> sdm;10.220.204.17;4064051;1016012;20641
>>>>>>
>>
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux