실제 물리적 선형 메모리(조각 나지 않은, 연속한)에 접근하지 않으면 성능이 안나온다.
왜냐하면 DMA 와 같은 CPU 처리시간을 컨슘하지 않는 인터페이스들은,
당연히 OS 커널의 메모리 관리를 거치지 않기 때문이다. (달리 DMA 인가... 음...)
그래서 가용한 가장 크고 물리적으로 연속한 DMA 버퍼 메모리로 확보하도록 해야하는데,
실제 구해보면 몇십메가 되지 않는다는걸 알 수 있다.
이거 좀 까다로운 문제.
왜냐하면 DMA 와 같은 CPU 처리시간을 컨슘하지 않는 인터페이스들은,
당연히 OS 커널의 메모리 관리를 거치지 않기 때문이다. (달리 DMA 인가... 음...)
그래서 가용한 가장 크고 물리적으로 연속한 DMA 버퍼 메모리로 확보하도록 해야하는데,
실제 구해보면 몇십메가 되지 않는다는걸 알 수 있다.
이거 좀 까다로운 문제.
DSP 구조에도 그런게 있을껄 ㅇㅇ
응 DSP 에 데이타 밀어 넣을때도 성능을 위해 DMA 쓰니까.
물리적 선형 메모리에 접근해야 속도가 빠른 이유로 왜 DMA를 제시함 DMA는 이유가아니라 그 예시아님?
PCI Express 의 bandwidth 가 너무 높아서 CPU 쓰면 답없으니 필수불가결.
여기서 답없다는건 그짓하느라 다른일 하나도 못한단 이야기.