스토리지에 read/write작업을 통해 발생시키는 부하에 대해 질문드려요
글쓴이: layers7 / 작성시간: 목, 2013/08/08 - 8:45오후
switch(rw_flag){
case READ_FLAG:
read_size = pread(filedes, buff, IO_SIZE, thread_pointer);
if(read_size != IO_SIZE)
{
printf("read operation fail!\n");
}
else
{
io_count++;
r_io_count++;
}
break;
case WRITE_FLAG:
write_size = pwrite(filedes, buff, IO_SIZE, thread_pointer);
if(write_size != IO_SIZE)
{
printf("write operation fail!\n");
}
else
{
io_count++;
w_io_count++;
}
break;
}
다음의 소스를 통해 n개의 thread에서 동시에 디스크에 i/o를 발생시킵니다. 근데 여기서
IO_SIZE를 4K로 했을 경우, 디스크가 처리할 수 있는 대역폭 많큼 I/O 부하를 주지 못하는거 같습니다.
어떤식으로 해결해야 할까요? 적다보니 내용이 약간 두루뭉실하게 된 부분도 있는 것 같습니다.
추가적인 질문이나 요청을 해주시면 바로바로 말씀드리겠습니다.
Forums:
댓글 달기