Re: [PATCH for-next] RDMA/hns: Create QP/CQ with selected QPN/CQN for bank load balance

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

 



On 2020/11/11 1:46, Jason Gunthorpe wrote:
> On Tue, Nov 10, 2020 at 09:19:39AM +0000, liweihang wrote:
>> On 2020/11/6 21:37, Jason Gunthorpe wrote:
>>> On Fri, Nov 06, 2020 at 01:52:57AM +0000, liweihang wrote:
>>>
>>>> There are 8 banks and each of them has a counter which represents
>>>> how many QPs are using this bank. We first find the bank with the
>>>> smallest count, and then try to find a QPN belongs to this bank
>>>> according to the bitmap.  The ida will find an unused ID starting
>>>> from 0, I think it can't meet our needs. If we use ida here, the
>>>> code may looks like:
>>>
>>> I don't understand, why wouldn't the ida give you a free QPN in a bank
>>> directly?
>>>
>>> Jason
>>>
>>
>> Hi Jason,
>>
>> Here is the QPN that belongs to each bank:
>>
>> QPN on bank0:0, 8, 16, 24 ... <lower three bits is 0>
>> QPN on bank1: 1, 9, 17, 25 ... <lower three bits is 1>
>> QPN on bank2: 2, 10, 18, 26 ... <lower three bits is 2>
>> ...
>> QPN on bank6: 6, 14, 22, 30 ... <lower three bits is 6>
>> QPN on bank7: 7, 15, 23, 31 ... <lower three bits is 7>
>>
>> If bank 6 is the one with the lowest load, then we need to find a
>> valid QPN belongs to bank6, that means, the lower 3 bits of QPN is
>> 6 and it hasn't been used.
>> We can't find out a way to use ida in this situation because the
>> QPNs of each bank are discontinuous.
> 
> Each bank has an IDA, you allocate from the IDA then shift left and or
> in the bank number
> 
> Jason
> 

Thanks for your advice, we will achieve it and do some tests.

Weihang



[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