On 2019-12-06 01:26, Venky Venkatesh wrote:
I see that the provision in 18.11 eventdev DSW for maximum number of queues
is
#define DSW_MAX_QUEUES (16)



    1. If the number of queues needed is to be increased to 7 bits (i.e.
    128) is there any issue (correctness, scale, performance) other than
    increased data structure size?
No.

    2. I see that it is only used in the following structs:
       - struct dsw_evdev: struct dsw_queue queues[DSW_MAX_QUEUES];
       sizeof(struct dsw_queue) ~ DSW_MAX_FLOWS. So the total increase
       contribution here is (128-16)*DSW_MAX_FLOWS from about 0.5MB to 4MB
       - struct dsw_port: uint64_t queue_enqueued[DSW_MAX_QUEUES],
queue_dequeued[DSW_MAX_QUEUES];
       This increase is negligible (a few KB at most across all dsw_ports)
On x86_64, the size of the dsw_evdev-struct is increased by ~32 kB per 
queue added.
    3. So is it enough if I changed the above define? (In other words I hope
    there are no other hidden/implicit dependencies on the current value 16
    elsewhere in the code). Also I suppose the only way is to directly change
    this in the code, rite?

Yes, and yes.

The original reason for having that define was that I thought 16 queues would be enough for anyone. As so many in the past that has utter such statements, I might well have been wrong.
/M

Reply via email to