Jeff,

Did you mean -
    pre-calculate a set of interval/sqrt(count) for some range of count --  
probably (1..interval^2), 
    and for any count > interval^2, the next interval can just be set to t+1

Also, interval is generally kept in microseconds, hence a nominal value for 
interval is 100000.

The current Codel Linux implementation of 1/sqrt(count) uses 4 multiplications.

Anil

-----Original Message-----
From: aqm [mailto:[email protected]] On Behalf Of Jeff Weeks
Sent: Monday, August 10, 2015 12:18 PM
To: [email protected]
Subject: [aqm] avoiding the sqrt

The CoDel control_law is defined as 't + interval/sqrt(count)'

The sample implementation 
(https://urldefense.proofpoint.com/v2/url?u=http-3A__queue.acm.org_appendices_codel.html&d=BQICAg&c=jcv3orpCsv7C4ly8-ubDob57ycZ4jvhoYZNDBA06fPk&r=FyvaklKYrHaSCPjbBTdviWIW9uSbnxdNSheSGz1Jvq4&m=Mwm2-08h6DG8dG8A8i_FAQ9gIL67_jeiZA_pVQpEnIU&s=dMb61gcX82gBDxDv3nIAN4_lJma52tJT57lEdcXrVko&e=
 ) suggests that sqrt(count) can be calculated using only integer 
multiplication, but I'm wondering if it even needs to be calculated.

Would it not be more efficient to pre-calculate a set of 1/sqrt(count) for some 
range --  probably (1..interval), and for any count > interval, the next 
interval can just be set to t+1.

Is there any reason to not use this approach (assuming sufficient memory 
exists, of course)?

--Jeff

________________________________
/dev/jeff_weeks.x2936
Sandvine Incorporated

_______________________________________________
aqm mailing list
[email protected]
https://urldefense.proofpoint.com/v2/url?u=https-3A__www.ietf.org_mailman_listinfo_aqm&d=BQICAg&c=jcv3orpCsv7C4ly8-ubDob57ycZ4jvhoYZNDBA06fPk&r=FyvaklKYrHaSCPjbBTdviWIW9uSbnxdNSheSGz1Jvq4&m=Mwm2-08h6DG8dG8A8i_FAQ9gIL67_jeiZA_pVQpEnIU&s=guSznYIkwKsTZpoAOLCaLdhlKa4GUMNrO7mu4sv3nMM&e=
 

_______________________________________________
aqm mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/aqm

Reply via email to