내가있는 USB 키 ( PQI U822V-Speedy 32G )가 있습니다 리눅스에서 더 빠르지 않은 벤치 마크를 시도했다. 쓰기 대역폭을 테스트하고 있습니다.
와이즈 위즈 원시 파티션에서2048 섹터에서 시작하여 파티션을 생성 한 다음 4GB의 순차적 쓰기를 수행했습니다 :
dd
~ 22MB/s를 얻습니다.
나는 또한 몇 가지
dd if=/dev/zero of=/dev/sdb1 bs=1M count=4096
를 시도
위의 것과 같이 병렬로 실행하지만
dd
그리고
count=1024
드라이브의 다른 영역에 쓸 수 있습니다. 같은 결과입니다.
seek=
를 포맷하면
dd
가있는 파티션
또는
sdb1
, 큰 파일을 복사하십시오 (실제 또는
ext4
)
)와 같이 :
NTFS
제조자가 광고 한대로 66MB/s를 초과합니다. 물론 나는
/dev/zero
를 고려
복사 직후의 기간.
왜 이렇게 큰 성능 차이가 있습니까?
time dd if=/dev/zero of=/media/USBKEY/file.bin bs=1M count=4096 ; time sync
-
답변 # 1
-
답변 # 2
측정 결과는 커널 아키텍처로 설명 할 수 있습니다. 파일 시스템 액세스를 사용하면 가능한 모든 버퍼와 최적화로 커널의 잠재력을 최대한 활용할 수 있습니다. 특히 버퍼는 벤치 마크 속도를 높입니다 (커널은 100 % a_A_syncronous입니다). 장치 파일의 dd는이 중 많은 부분을 사용하지 않습니다.
-
답변 # 3
hdparm
를 사용해보십시오. 캐싱을 사용하거나 사용하지 않고 드라이브 성능을 벤치마킹하는 대신 :$ sudo hdparm -tT /dev/sda1 /dev/sda1: Timing cached reads: 6314 MB in 2.00 seconds = 3157.61 MB/sec Timing buffered disk reads: 244 MB in 3.04 seconds = 80.26 MB/sec
-
답변 # 4
파일 시스템에 스파 스 파일을 작성하는 최적화로 인해 발생합니다.
dd if=/dev/zero
를 할 때 원시 장치에 제로 블록은 실제로 디스크에 기록됩니다.이 방법으로 성능을 테스트하려면/dev/urandom을 입력 파일로 사용하십시오 (
dd if=/dev/urandom
). 그러면 파일 시스템이 임의의 데이터를 디스크에 쓰게됩니다.
- OpenCv의 폴더에서 여러 이미지 읽기 (python)
- 파이썬 셀레늄 모든 "href"속성 가져 오기
- git commit - 자식 - 로컬 커밋 된 파일에 대한 변경을 취소하는 방법
- html - 자바 스크립트 - 클릭 후 변경 버튼 텍스트 변경
- JSP에 대한 클래스를 컴파일 할 수 없습니다
- javascript - 현재 URL에서 특정 div 만 새로 고침/새로 고침
- jquery - JavaScript로 현재 세션 값을 얻으시겠습니까?
- javascript - swiperjs에서 정지, 재생 버튼 추가
- vue.js - axios를 사용하여 서버에 이미지를 업로드하는 방법
- python - 문자열에서 특정 문자 제거
이제 다시 보니, 이것이 하드 드라이브가 아니라 USB 키 (플래시 드라이브)라고 말한 것을 깨달았습니다. 플래시 메모리는 큰 블록에서만 지울 수 있으며 개별 섹터는 먼저 지우지 않고 (그리고 전체 블록 안에있는) 전체 섹터를 지울 수 없습니다. 소프트웨어는 언제든지 디스크에서 원하는 위치에 쓸 수 있기를 기대하기 때문에 디스크에는 지우기를 투명하게 처리 할 수있는 변환 논리가 있습니다. 이것이 수행되는 방식은 쓰기 성능에 큰 영향을 미칩니다. 대부분의 장치는 순차적 쓰기를 매우 잘 처리하지만 임의 쓰기를 빨아들이는 대부분의 디스크에 알고리즘을 사용합니다. 디스크 시작 근처의 영역은 일반적으로 사전 포맷 된 FAT 파일 시스템에서 FAT에 의해 사용되며이 영역은 무작위로 자주 기록되므로이 영역에서는 순차적 쓰기 속도가 느리지 만 다른 알고리즘을 사용합니다. 무작위 쓰기는 끔찍합니다.
따라서, 내가 코멘트로 추가 한 나의 초기 추측이 옳았다는 것을 확신한다. 파일 시스템에 쓸 때보고있는 것은 나머지 디스크의 성능이며 오프셋 0에 기록하면 지방 영역에 쓰는 것입니다. 수백 mb의 dd 대상을 찾는 경우 속도가 상당히 빨라야합니다.