> On Oct 16, 2017, at 10:16 PM, Dave Täht <[email protected]> wrote:
> 
> > Also, If there's a reason I should do my tests with iperf2 instead, I'm all
> > ears, as I'm a "scientist," not attached to my own work. :) I read that 
> > they're
> Cross checking is always good.

True, don’t need to find out in 2019 about a gross measurement bug from 2017...

> > setting the thread priority to realtime, which likely reduces scheduling 
> > delays,
> > but there's probably a cost to that. I experimented with Go's
> 
> So long as you can complete your work within a bound, realtime
> scheduling is a win. I also tended to like timer_fds as those let you
> know easily when you'd overrun a bound.

Timerfd is on the list.

Maybe I can increase thread prio from Go in Linux using the syscall package. If 
I understand correctly though, realtime scheduling policies may require root. 
Ok, this is on the list to play with, though I’m not at all clear on how or if 
I can do it yet. Hello there ‘man sched’…

> The *very* first thing I learned about GO was how to turn the garbage
> collector off. I'm weird that way. I'd still suggest turning the garbage
> collector off until after the end of a run.


Maybe you’d like Rust. Syntax probably too complicated for my taste...

But anyway, disabling GC is done. That cut back on some outliers, particularly 
with low interval tests.

Along with that, I’m now allowing the max capacity of the results slice to to 
go up to the expected size for the whole test (I was previously limiting the 
max cap, which I see now was misguided, especially with GC disabled). So 
basically it's just creating a big slice (each element a value) in one shot at 
the beginning of the test, disabling GC, filling it with results, then 
re-enabling GC for stats calculation after all the packets are collected. There 
shouldn’t be much of any other garbage created during data collection, but I’ll 
make sure later.

That said, they’ve made great strides with Go’s GC latency in the last year. 
Then this should theoretically make it into 1.10: 
https://github.com/golang/proposal/blob/master/design/17503-eliminate-rescan.md 
<https://github.com/golang/proposal/blob/master/design/17503-eliminate-rescan.md>

Also for Toke, the JSON doc is posted to README.md. Might be nice if there were 
an easier way to document JSON, but I don’t think JSON schema is that way, for 
example…



-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/tohojo/flent/issues/106#issuecomment-337080556
_______________________________________________
Flent-users mailing list
[email protected]
http://flent.org/mailman/listinfo/flent-users_flent.org

Reply via email to