DPDK started as a bare-metal framework and evolves toward a library model. In order to be a real library, giving all powers and flexibility to the application, some work and agreements are required. Ideally, the application should own all the configurations (e.g. for threads, memory or devices), while DPDK provides some good defaults, some parsing helpers, and a fine-grain API.