2011-12-07 2 views
4

, 난 발견소켓이있는 스플 라이스가 DMA없이 성능을 향상시킬 수없는 이유는 무엇입니까? <a href="http://en.wikipedia.org/wiki/Splice_%28system_call%29" rel="nofollow">Wikipedia's introduction to splice</a>에서

소켓 접합()을 사용하여, 네트워크 컨트롤러 (NIC)해야 지원 DMA.

NIC가 DMA를 지원하지 않으면 splice()는 성능 향상을 제공하지 않습니다. 그 이유는 파이프의 각 페이지가 프레임 크기 (페이지 당 사용 가능한 4096 바이트의 1460 바이트)까지 채워지기 때문입니다. 이 사본의 수 (최소 두 개의 DMA 복사)

경우]를 최소화

  • 전환 적은 상황 거기

    • : 때문에 내가 이해에서

  • 는 스플 라이스 성능을 향상 NIC는 DMA 사본을 지원하지 않습니다. 우리는 CPU 사본을 사용합니다. 이것은 사용자 공간으로 가야하는 정상적인 사본보다 여전히 좋습니다.

    위키피디아가 NIC에서 DMA를 지원하지 않으면 성능이 향상되지 않는다고 나는 이해할 수 없습니다.

    답변

    0

    위키 백과가 틀렸을 수도 있습니다. 이 기사는 이미 인용문에 빛이있는 것으로 표시되었습니다 ...