Hirdetés

Új hozzászólás Aktív témák

  • azbest

    félisten

    nem is kell nagyon keresni a témában:
    http://corona.homeunix.net/cx88wiki/Overview/GeneralArchitecture

    The biggest limitation of the CX2388x, as far as modern systems are concerned, is that its DMA program format only allows for 32-bit physical memory addresses (not including the newer CX23885, which allows 64-bit addresses). This means that on 64-bit systems with large amounts of memory, the operating system will need to translate out-of-range physical addresses into 32-bit physical addresses that the CX2388x DMA engine can understand. The cx88 driver uses the BSD bus_dma framework, which handles this behind the scenes. This translation can impose a performance penalty, especially on amd64 systems where low-memory copy buffers ("bounce buffers") are used as intermediaries between high-memory buffers and 32-bit hardware devices. Some 64-bit architectures (sparc64, sun4v) have I/O MMUs, which are address translation hardware units that FreeBSD uses to eliminate the need for bounce buffers. The newest amd64 chipsets also have I/O MMUs, but FreeBSD does not (yet) use them.

    Ha jól értem a PxDVR3200 H kártyádnál a hardver képes 64bites dma címzére is, csak lusták voltak picit jobban módosítani a már meglévő drivert.

    A szöveg többi része alapján szintén a driver (oprendszer) feladata a címfordítás. Itt megemlíti ennek teljesítménykorlátozó tényezőjét is, és hogy bizonyos rendszereken van hardveres támogatás a címfordításra. (csak nem a virtualizáció támogatásáról van szó, amit nagyon sok proci támogat manapság).

    Szóval megfelelő driverrel legfeljebb a virtualizációt nem támogató processzoroknál lehetne némi teljesítménycsökkenés... de ott sem kéne, hogy 1% prociterhelés helyett 100% legyen, ez inkább valami programozási bug (deadlock vagy végtelen ciklus).

    [ Szerkesztve ]

Új hozzászólás Aktív témák

Hirdetés