I've written some tools to debug the performance issues that people have seen. Part of it is set of patches to the server that has it print out a *lot* of information about what it's doing. The second part of the tool is a script that processes the output, and generates pretty graphs.
See the following URL for an example: http://git.freeradius.org/processing.png This was created by running 1000 packets through the server, then collecting and analyzing the data. The graph is an average over all requests. The interpretation of the graph is: - the average request takes ~0.022 seconds - it is put into a queue for a bit - then pulled off by a thread and processed - then run through the "authorize" section - the delay before running the "authorize" section is due to the decoding of binary packet to internal attributes - a number of modules are run - "authenticate" is skipped, as the test set "Auth-Type := Accept" - the post-auth section is run - which runs the "exec" module. - the server replies, and the request is marked "finished" We can quickly see here where all of the CPU time is spent. This tool should hopefully let people track down *where* the performance problems are located. Email me off list if you are interested. I'm not sure that this will go into an official release, because it's pretty invasive. Alan DeKok. - List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html