나는 사용하고있다@tremby 좋은 아이디어네요디스크를 임의의 데이터로 채웁니다.
여기에는 파이프를 통해 openssl
많은 수의 0을 암호화하는 작업이 포함됩니다 dd (bs=4M)
.
프로그램을 실행하는 단일 코어를 최대로 사용하고 있지만(여전히 7개가 있습니다) 최대 I/O에는 도달하지 못했습니다.
입력을 병렬화하는 방법을 찾고 있습니다 dd
.
내 생각엔 내가 할 수 있을 것 같아이와 같이, 그러나 제가 정말로 찾고 있는 것은 디스크에 대한 쓰기가 순차적으로 이루어지도록 병렬화 openssl
하고 쓰는 방법입니다.dd
누구든지 제안이 있나요?
답변1
중요한 것은 여러 명령의 출력을 병합하는 방법이 있다는 것입니다 openssl
. 저는 FIFO가 귀하의 문제를 해결할 수 있다고 믿습니다. 이 시도
mkfifo foo
openssl <whatever your command is> > foo &
openssl <whatever your command is> > foo &
openssl <whatever your command is> > foo &
dd if=foo of=/dev/sda bs=4M
편집: 시스템을 최대화하는 데 필요한 만큼의 회선을 추가하세요 openssl
. 통화 후에도 회선을 추가할 수 있습니다 dd
.
아래 댓글에 OP가 언급되어 있듯이 cat foo | pv | dd of=/dev/sda
진행 상황을 모니터링할 수 있습니다.