MoonGen
|
DPDK ... More...
Go to the source code of this file.
Functions | |
function mod | init () |
Inits DPDK. Called by MoonGen on startup. | |
function task | wait () |
Wait for a task and return any arguments returned by the task. | |
function mod | launchLuaOnCore (core,...) |
Launch a LuaJIT VM on a core with the given arguments. More... | |
function mod | launchLua (...) |
launches the lua file on the first free core | |
function mod | waitForSlaves () |
waits until all slave cores have finished their jobs | |
function mod | getCycles () |
get the CPU's TSC | |
function mod | getCyclesFrequency () |
get the TSC frequency | |
function mod | getTime () |
gets the time in seconds | |
function mod | setRuntime (time) |
set total run time of the test (to be called from master core on startup, shared between all cores) | |
function mod | running (extraTime) |
Returns false once the app receives SIGTERM or SIGINT, the time set via setRuntime expires, or when a thread calls dpdk.stop(). | |
function mod | stop () |
request all tasks to exit | |
function mod | sleepMillis (t) |
Delay by t milliseconds. More... | |
function mod | sleepMicros (t) |
Delay by t microseconds. More... | |
function mod | sleepMillisIdle (t) |
Sleep by t milliseconds by calling usleep(). | |
function mod | sleepMicrosIdle (t) |
Sleep by t microseconds by calling usleep(). | |
function mod | getCore () |
Get the core and socket id for the current thread. | |
Variables | |
local | mod = {} |
high-level dpdk wrapper | |
function mod launchLuaOnCore | ( | core | , |
... | |||
) |
Launch a LuaJIT VM on a core with the given arguments.
TODO: use proper serialization and only pass strings
function mod sleepMicros | ( | t | ) |
Delay by t microseconds.
Note that this does not sleep the actual thread; the time is spent in a busy wait loop by DPDK. This means that this sleep is somewhat more accurate than relying on the OS.
function mod sleepMillis | ( | t | ) |
Delay by t milliseconds.
Note that this does not sleep the actual thread; the time is spent in a busy wait loop by DPDK.