답변:
Perforce에 대한 경험이 없지만이 동기화는 I / O 바인딩 작업 처럼 들립니다 . 병목 현상이 디스크 나 네트워크이기 때문에 여러 프로세스에서 병렬 처리하는 것은 도움이되지 않습니다.
디스크에 병목 현상이 발생하면 병렬 처리로 인해 실제로 다른 파일에 액세스하는 프로세스가 많기 때문에 디스크 헤드가 스래쉬되기 때문에 실제로 느려질 수 있습니다.
스크립팅에 뛰어 들기 전에 약간의 분석을 통해 느리게 만드는 원인을 파악하십시오. 같은 도구를 사용 strace
하고 Wireshark를 예를 들어 / 쓰기 전화 및 네트워크 트래픽을 읽고, 공부.
때때로 p4d (서버) 프로세스는 단일 스레드 프로세스로 실행되는 '-f'플래그로 시작되었습니다.
주의점 몇
대신 -p 옵션을 사용하여 동기화를 시도하십시오. 이는 더 적은 DB 쓰기를 의미하며 좋은 것입니다!
당신은 'n 레벨 깊이 가서 아래로 동기화'를 시도 할 수 있습니다.
$ p4 dirs // <경로> / * | 읽는 동안 경로; 해야 할 것
p4 dirs $ path / * | 서브 패스를 읽는 동안; 해야 할 것 p4 dirs $ subpath / * | 서브 서브 패스를 읽는 동안; 해야 할 것 p4 <cmd> $ subsubpath / ...; 끝난; p4 <cmd> $ path / ... #이 수준에서 파일을 잡으려면 끝난; p4 <cmd> // <path> / ... #이 최상위 레벨에서 파일을 포착합니다. 귀하의 경우 <cmd>는 "sync"+ 다른 인수와 같습니다.