KTLS doesn't work well with HTTP/2 because it needs framing around each chunk. If you have a typical 4k chunk size, it ends up doing a write followed by a 4k sendfile call repeatedly. It actually makes CPU overhead worse without using very large chunks. Works well for HTTP/1.1.