perf-dirty.p
| 1 |
DEFINE BUFFER buf1 FOR adaptivept9. |
|---|---|
| 2 |
DEFINE VARIABLE i AS INTEGER NO-UNDO. |
| 3 |
DEFINE VARIABLE n AS INTEGER NO-UNDO INITIAL 20000. |
| 4 |
DEFINE VARIABLE t AS INTEGER NO-UNDO. |
| 5 |
|
| 6 |
/* clean slate */ |
| 7 |
FOR EACH adaptivept9: |
| 8 |
DELETE adaptivept9. |
| 9 |
END. |
| 10 |
|
| 11 |
DO i = 1 TO n TRANSACTION: |
| 12 |
CREATE adaptivept9. |
| 13 |
adaptivept9.k1 = i. |
| 14 |
adaptivept9.k2 = 1. |
| 15 |
END. |
| 16 |
|
| 17 |
DO TRANSACTION: |
| 18 |
FIND FIRST adaptivept9 WHERE adaptivept9.k1 = 1. |
| 19 |
adaptivept9.k2 = 999. |
| 20 |
|
| 21 |
ETIME(TRUE). |
| 22 |
DO i = 1 TO n: |
| 23 |
FIND FIRST buf1 WHERE buf1.k1 = i NO-ERROR. |
| 24 |
END. |
| 25 |
t = ETIME. |
| 26 |
|
| 27 |
MESSAGE "DIRTY find x" n "(100% cache miss) elapsed(ms):" t. |
| 28 |
|
| 29 |
UNDO, LEAVE. |
| 30 |
END. |