blob: 362ccccd97d4a4f8aa2d2cec0f79a80a92754712 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
(add-to-load-path "module")
(use-modules (calp util)
(calp util app)
(calp util config)
(vcomponent)
(vcomponent group)
(vcomponent datetime)
(datetime)
(srfi srfi-41)
(srfi srfi-41 util)
)
(load "config.scm")
((@ (vcomponent) init-app) (get-config 'calendar-files))
(define all-events (getf 'event-set))
(define groups (group-stream all-events))
(define start #2020-06-01)
(define end #2020-07-01)
(define (run-filter)
(stream->list (filter-sorted-stream (lambda (e) (event-overlaps? e start end))
all-events)))
(define (run-grouped)
(map group->event-list
(stream->list (get-groups-between groups start end))))
(define (calc-time start end)
(exact->inexact
(+ (- (car end)
(car start))
(/ (- (cdr end)
(cdr start))
#e1e6))))
(run-filter)
(run-grouped)
(format #t "Starting timings~%")
(define t1 (gettimeofday))
(do ((i 1 (1+ i)))
((> i 1000))
(run-grouped))
(format #t "end first timings~%")
(define t2 (gettimeofday))
(do ((i 1 (1+ i)))
((> i 1000))
(run-filter))
(format #t "end second timings~%")
(define t3 (gettimeofday))
(format #t "t1 = ~a~%t2 = ~a~%"
(calc-time t1 t2)
(calc-time t2 t3))
(values (calc-time t1 t2)
(calc-time t2 t3))
|