2017-11-17 13 views
0

프로그램 실행 속도에 대한 몇 가지 작은 테스트를 실시 중입니다. 나는 고정 된 크기의 테이블을 가지고 있으며 테이블은 난수로 채워지고 알고리즘에 따라 정렬됩니다. 테스트 결과이 테이블을 정렬하는 데 사용 된 스레드 수가 달라졌습니다. 다음은 출력 결과의 예입니다.첫 번째 값과 비교 된 변동을 나타내는 R을 사용하여 플롯 그리기

size;time;nb_thread;run_id 
100000;0.013522;1;1 
100000;0.013639;1;2 
100000;0.013170;1;3 
100000;0.012947;1;4 
100000;0.012299;1;5 
100000;0.012281;1;6 

차트에 N 개의 스레드를 사용하는 개선 여부를 표시하고 싶습니다. 나는 그들의 평균에 따라 실행 시간의 변화를 표시 할 수 있지만 결과는 시각적으로 말하지 않습니다. 당신은 하나의 스레드 대신 2 개의 스레드를 사용하는 것이 엄청나게 개선되었다는 환상을 얻지 만, 실제로 개선이 있었다고해도 상당히 작습니다.

그래서 하나의 스레드 만 실행 한 다음 변형 된 스레드를 표시하려고합니다. 나는 내가 원하는 것을 모른다. 어떻게해야합니까?

답변

0

이 플롯은 첫 번째 값과 비교 한 모든 값을 보여줍니다.

library(ggplot2) 

ggplot(dt, aes(x = factor(run_id), y = time)) + 
    geom_point(size = 3) + 
    geom_hline(aes(yintercept = time[1]), color = "blue", size = 2) + 
    geom_segment(aes(xend = factor(run_id), yend = time[1]), 
       size = 1, color = "red", linetype = "dashed") + 
    scale_x_discrete(name = "Run ID") + 
    scale_y_continuous(name = "Time") + 
    theme_bw() + 
    theme(panel.grid = element_blank()) 

enter image description here

데이터

dt <- read.table(text = "size;time;nb_thread;run_id 
100000;0.013522;1;1 
       100000;0.013639;1;2 
       100000;0.013170;1;3 
       100000;0.012947;1;4 
       100000;0.012299;1;5 
       100000;0.012281;1;6", 
       header = TRUE, sep = ";")