

Performance Tuning EC2 Instances - vinnyglennon
http://www.slideshare.net/brendangregg/performance-tuning-ec2-instances

======
helper
The video that goes with these slides is here:
[https://www.youtube.com/watch?v=7Cyd22kOqWc](https://www.youtube.com/watch?v=7Cyd22kOqWc)

------
jordanthoms
Can someone comment on why they use FreeBSD for content delivery (vs linux as
a default choice)? Seems people use BSDs for certain high-performance tasks
and I'm curious what advantages it has.

~~~
brendangregg
Scott Long has summarized it a few times, eg, from
[http://people.freebsd.org/~scottl/Netflix-
BSDCan-20130515.pd...](http://people.freebsd.org/~scottl/Netflix-
BSDCan-20130515.pdf):

    
    
      • Availability of expertise, outstanding community
      • Works well, good vendor support
      • No GPL
      • Features used:
      – SUJ
      – gmirror – boot drive only
      – AIO
      – Dtrace, HWPMC
      – TCP Stack, modular CC
    

It's missing "Integrates tightly with nginx: Async I/O and sendfile()"

which Scott included in
[http://youtu.be/FL5U4wr86L4?t=18m30s](http://youtu.be/FL5U4wr86L4?t=18m30s) .

In the video he elaborates a bit more about the GPL...

edit: formatting

~~~
cbsmith
Wouldn't you say that Linux integrates just as nicely with nginx's async I/O
and sendfile support?

~~~
m0th87
I thought *BSDs used kqueue, which allegedly had worse performance at high
concurrency vs Linux's epoll?

EDIT: This seems to suggest kqueue may have better performance due to less
syscall overhead: [http://www.eecs.berkeley.edu/~sangjin/2012/12/21/epoll-vs-
kq...](http://www.eecs.berkeley.edu/~sangjin/2012/12/21/epoll-vs-kqueue.html)

~~~
cbsmith
Yeah, it's the opposite, though there are other mechanisms that could do
better than epoll, but they need more refinement.

------
lazyant
"Swappiness is set to zero to disable swapping..." for many (most, older?)
distros setting swappiness to zero won't disable swapping completely.

------
nwmcsween
vm.swappiness != 0 is useful if you use something like zswap.

