Conselhos sobre o gargalo de desempenho SSD necessário

0

Acho que preciso de conselhos avançados sobre SSD, SATA, limites de entrada / saída, etc.

Estou programando uma instalação de vídeo onde eu continuamente leio e escrevo bastante dados:

Para o primeiro SSD, unidade A, escrevo 50 quadros por segundo (= 50 arquivos por segundo) e leio simultaneamente outros 50 fps (da mesma unidade!). De um segundo SSD, drive B, eu leio 50 quadros por segundo adicionais.

A pergunta é: onde está o gargalo da garrafa? Eu consigo executar meu programa a 25 fps, mas não mais rápido (e eu precisaria chegar a 50 fps).

A quantidade total de dados não é excessiva: cada quadro é de 1,8 MB, então cada fluxo é de aproximadamente 90 MB / s, o que equivale a um total de 180 MB / s de leitura e mais 90 MB / s de gravação. 270 MB / s de transferência total de dados em 150 operações de leitura / gravação por segundo.

O que mais me confunde é o seguinte:

  • Eu obtenho o mesmo desempenho quando executo o patch de dois SSDs separados quando executo todos os três fluxos de um único sem usar o segundo SSD.
  • A velocidade não aumenta substancialmente se eu reduzir um ou dois desses fluxos (e reduzir o tamanho do arquivo para 260 KB / arquivo, o que equivale a apenas 13 MB / s por fluxo).
  • Ele aumenta no entanto (para 40-60 fps) se eu alternar todos os três fluxos para 260 KB / arquivo.

Isso me faz pensar no que está acontecendo ... são as unidades? É SATA? Ou alguma outra coisa que talvez nem tenha ouvido falar? E o que posso fazer sobre isso?

Eu uso um MacBook Pro (Retina, início de 2013, i7 2,6 GHz, 16 GB de RAM, OS 10.9.2), unidade A é um SSD Samsung 840 pro de 256 GB conectado via thunderbolt, unidade B é o interno 512 GB Macbook SSD (incorporado pela Apple).

Meu programa é construído em MAX / MSP e eu uso um formato de dados binários descompactado e arbitrário (.jxf). Eu posso excluir problemas de carga da CPU / GPU.

    
por user3647558 17.05.2014 / 14:23

0 respostas