notes, command-line, and program output
NOTES:
64-bit Ubuntu quad core
SBCL 2.4.8
Fri, 06 Sep 2024 21:15:58 GMT
MAKE:
cp: 'knucleotide.sbcl-6.sbcl' and './knucleotide.sbcl-6.sbcl' are the same file
SBCL built with: /opt/src/sbcl-2.4.8/bin/sbcl --userinit /dev/null --batch --eval '(load "knucleotide.sbcl-6.sbcl_compile")'
### START knucleotide.sbcl-6.sbcl_compile
(handler-bind ((sb-ext:defconstant-uneql (lambda (c) (abort c)))) (require :sb-concurrency) (load (compile-file "knucleotide.sbcl-6.sbcl" ))) (save-lisp-and-die "sbcl.core" :purify t)
### END knucleotide.sbcl-6.sbcl_compile
; compiling file "/home/dunham/all-benchmarksgame/benchmarksgame_i53330/knucleotide/tmp/knucleotide.sbcl-6.sbcl" (written 26 APR 2018 12:48:18 PM):
; file: /home/dunham/all-benchmarksgame/benchmarksgame_i53330/knucleotide/tmp/knucleotide.sbcl-6.sbcl
; in: DEFUN MY-TR-RUN
; (ELT KNUCLEOTIDE2::*MY-TASK-LIST* KNUCLEOTIDE2::TASKINDEX)
;
; note: unable to
; optimize
; due to type uncertainty:
; The first argument is a VECTOR, not a (SIMPLE-ARRAY * (*)).
; (FUNCALL (KNUCLEOTIDE2::MY-TASK-MYLAMBDA KNUCLEOTIDE2::THETASK))
;
; note: unable to
; optimize away possible call to FDEFINITION at runtime
; because:
; callable expression is not known to be a function
; in: DEFUN CREATE-FRAGMENT-TASKS
; (LOOP KNUCLEOTIDE2::FOR KNUCLEOTIDE2::FRAGMENTLENGTH KNUCLEOTIDE2::ACROSS KNUCLEOTIDE2::MFRAGMENT-LENGTHS
; DO (LOOP KNUCLEOTIDE2::FOR KNUCLEOTIDE2::I KNUCLEOTIDE2::OF-TYPE (UNSIGNED-BYTE
; 32) KNUCLEOTIDE2::FROM 0 KNUCLEOTIDE2::BELOW KNUCLEOTIDE2::FRAGMENTLENGTH
; DO (LET ((KNUCLEOTIDE2::OFFSET KNUCLEOTIDE2::I)
; (KNUCLEOTIDE2::MFRAGMENTLENGTH
; KNUCLEOTIDE2::FRAGMENTLENGTH))
; (VECTOR-PUSH-EXTEND
; (KNUCLEOTIDE2::MAKE-MY-TASK :MYLAMBDA #)
; KNUCLEOTIDE2::TASKS))))
; --> LET LET TAGBODY SB-LOOP::LOOP-DESETQ SETQ THE AREF
; ==>
; 1
;
; note: unable to
; optimize
; due to type uncertainty:
; The first argument is a VECTOR, not a SIMPLE-STRING.
;
; note: unable to
; avoid runtime dispatch on array element type
; due to type uncertainty:
; The first argument is a VECTOR, not a SIMPLE-ARRAY.
; in: DEFUN CREATE-FRAGMENT-MAP
; (DEFUN KNUCLEOTIDE2::CREATE-FRAGMENT-MAP
; (SEQUENCE KNUCLEOTIDE2::OFFSET KNUCLEOTIDE2::FRAGMENTLENGTH)
; (DECLARE (TYPE (SIMPLE-ARRAY (UNSIGNED-BYTE 8) (*)) SEQUENCE)
; (TYPE (UNSIGNED-BYTE 32) KNUCLEOTIDE2::OFFSET)
; (TYPE (UNSIGNED-BYTE 32) KNUCLEOTIDE2::FRAGMENTLENGTH))
; (LET* ((KNUCLEOTIDE2::RES
; (KNUCLEOTIDE2::MAKE-RESULT :KEYLENGTH
; KNUCLEOTIDE2::FRAGMENTLENGTH))
; (KNUCLEOTIDE2::MYMAP
; (KNUCLEOTIDE2::RESULT-OUTMAP KNUCLEOTIDE2::RES))
; (KNUCLEOTIDE2::LASTINDEX (+ # 1)))
; (DECLARE (TYPE (UNSIGNED-BYTE 32) KNUCLEOTIDE2::LASTINDEX))
; (LOOP KNUCLEOTIDE2::FOR KNUCLEOTIDE2::INDEX KNUCLEOTIDE2::OF-TYPE (UNSIGNED-BYTE
; 32) KNUCLEOTIDE2::FROM KNUCLEOTIDE2::OFFSET KNUCLEOTIDE2::BELOW KNUCLEOTIDE2::LASTINDEX KNUCLEOTIDE2::BY KNUCLEOTIDE2::FRAGMENTLENGTH
; DO ...)
; KNUCLEOTIDE2::RES))
; ==>
; (SB-IMPL::%DEFUN 'KNUCLEOTIDE2::CREATE-FRAGMENT-MAP
; (SB-INT:NAMED-LAMBDA KNUCLEOTIDE2::CREATE-FRAGMENT-MAP
; (SEQUENCE KNUCLEOTIDE2::OFFSET
; KNUCLEOTIDE2::FRAGMENTLENGTH)
; (DECLARE (SB-C::TOP-LEVEL-FORM))
; (DECLARE (TYPE (SIMPLE-ARRAY # #) SEQUENCE)
; (TYPE (UNSIGNED-BYTE 32) KNUCLEOTIDE2::OFFSET)
; (TYPE (UNSIGNED-BYTE 32)
; KNUCLEOTIDE2::FRAGMENTLENGTH))
; (BLOCK KNUCLEOTIDE2::CREATE-FRAGMENT-MAP
; (LET* (# # #)
; (DECLARE #)
; (LOOP KNUCLEOTIDE2::FOR KNUCLEOTIDE2::INDEX KNUCLEOTIDE2::OF-TYPE # KNUCLEOTIDE2::FROM KNUCLEOTIDE2::OFFSET KNUCLEOTIDE2::BELOW KNUCLEOTIDE2::LASTINDEX KNUCLEOTIDE2::BY KNUCLEOTIDE2::FRAGMENTLENGTH
; DO ...)
; KNUCLEOTIDE2::RES))))
;
; caught STYLE-WARNING:
; Call to KNUCLEOTIDE2::GET-KEY could not be inlined because no definition for it
; was seen prior to its first use.
; in: DEFUN WRITE-FREQUENCIES
; (MAKE-ARRAY
; (HASH-TABLE-COUNT (KNUCLEOTIDE2::RESULT-OUTMAP KNUCLEOTIDE2::FREQUENCIES))
; :FILL-POINTER 0 :ELEMENT-TYPE 'CONS)
;
; caught STYLE-WARNING:
; The default initial element 0 is not a CONS.
; See also:
; The ANSI Standard, Function MAKE-ARRAY
; The ANSI Standard, Function UPGRADED-ARRAY-ELEMENT-TYPE
; (> (CDR KNUCLEOTIDE2::X) (CDR KNUCLEOTIDE2::Y))
;
; note: unable to
; open-code FLOAT to RATIONAL comparison
; due to type uncertainty:
; The first argument is a REAL, not a SINGLE-FLOAT.
; The second argument is a REAL, not a RATIONAL.
;
; note: unable to
; open-code FLOAT to RATIONAL comparison
; due to type uncertainty:
; The first argument is a REAL, not a DOUBLE-FLOAT.
; The second argument is a REAL, not a RATIONAL.
;
; note: forced to do GENERIC-> (cost 10)
; unable to do inline float comparison (cost 3) because:
; The first argument is a REAL, not a SINGLE-FLOAT.
; The second argument is a REAL, not a SINGLE-FLOAT.
; unable to do inline float comparison (cost 3) because:
; The first argument is a REAL, not a DOUBLE-FLOAT.
; The second argument is a REAL, not a DOUBLE-FLOAT.
; etc.
; (* KNUCLEOTIDE2::VALUE 100.0)
;
; note: forced to do GENERIC-* (cost 30)
; unable to do inline float arithmetic (cost 4) because:
; The first argument is a NUMBER, not a SINGLE-FLOAT.
; The result is a (VALUES
; (OR FLOAT (COMPLEX SINGLE-FLOAT) (COMPLEX DOUBLE-FLOAT))
; &OPTIONAL), not a (VALUES SINGLE-FLOAT &OPTIONAL).
; unable to do inline float arithmetic (cost 4) because:
; The first argument is a NUMBER, not a (COMPLEX SINGLE-FLOAT).
; The result is a (VALUES
; (OR FLOAT (COMPLEX SINGLE-FLOAT) (COMPLEX DOUBLE-FLOAT))
; &OPTIONAL), not a (VALUES (COMPLEX SINGLE-FLOAT)
; &OPTIONAL).
; (/ (* KNUCLEOTIDE2::VALUE 100.0) KNUCLEOTIDE2::TOTALCOUNT)
;
; note: forced to do full call
; unable to do inline float arithmetic (cost 12) because:
; The first argument is a (OR FLOAT (COMPLEX SINGLE-FLOAT)
; (COMPLEX DOUBLE-FLOAT)), not a SINGLE-FLOAT.
; The second argument is a NUMBER, not a SINGLE-FLOAT.
; The result is a (VALUES
; (OR FLOAT (COMPLEX SINGLE-FLOAT) (COMPLEX DOUBLE-FLOAT))
; &OPTIONAL), not a (VALUES SINGLE-FLOAT &OPTIONAL).
; unable to do inline float arithmetic (cost 12) because:
; The first argument is a (OR FLOAT (COMPLEX SINGLE-FLOAT)
; (COMPLEX DOUBLE-FLOAT)), not a (COMPLEX
; SINGLE-FLOAT).
; The second argument is a NUMBER, not a SINGLE-FLOAT.
; The result is a (VALUES
; (OR FLOAT (COMPLEX SINGLE-FLOAT) (COMPLEX DOUBLE-FLOAT))
; &OPTIONAL), not a (VALUES (COMPLEX SINGLE-FLOAT)
; &OPTIONAL).
; etc.
; in: DEFUN WRITE-COUNT
; (MAP '(VECTOR (UNSIGNED-BYTE 8)) #'CHAR-CODE KNUCLEOTIDE2::NUCLEOTIDEFRAGMENT)
;
; note: unable to
; optimize
; due to type uncertainty:
; The first argument is a SEQUENCE, not a VECTOR.
; (LENGTH KNUCLEOTIDE2::NUCLEOTIDEFRAGMENT)
;
; note: unable to
; optimize
; due to type uncertainty:
; The first argument is a SEQUENCE, not a VECTOR.
;
; note: unable to
; optimize
; due to type uncertainty:
; The first argument is a SEQUENCE, not a VECTOR.
; (LOOP KNUCLEOTIDE2::FOR KNUCLEOTIDE2::TASK KNUCLEOTIDE2::ACROSS KNUCLEOTIDE2::TASKS
; KNUCLEOTIDE2::FOR KNUCLEOTIDE2::RESULT = (KNUCLEOTIDE2::MY-TASK-RESULT
; KNUCLEOTIDE2::TASK)
; DO (IF (EQL (KNUCLEOTIDE2::RESULT-KEYLENGTH KNUCLEOTIDE2::RESULT)
; (LENGTH KNUCLEOTIDE2::NUCLEOTIDEFRAGMENT))
; (SETF COUNT (+ COUNT #))))
; --> LET LET LET TAGBODY SB-LOOP::LOOP-DESETQ SETQ THE AREF
; ==>
; 1
;
; note: unable to
; optimize
; due to type uncertainty:
; The first argument is a VECTOR, not a SIMPLE-STRING.
;
; note: unable to
; avoid runtime dispatch on array element type
; due to type uncertainty:
; The first argument is a VECTOR, not a SIMPLE-ARRAY.
; (LENGTH KNUCLEOTIDE2::NUCLEOTIDEFRAGMENT)
;
; note: unable to
; optimize
; due to type uncertainty:
; The first argument is a SEQUENCE, not a VECTOR.
; (+ COUNT
; (GETHASH KNUCLEOTIDE2::K
; (KNUCLEOTIDE2::RESULT-OUTMAP KNUCLEOTIDE2::RESULT) 0))
;
; note: forced to do GENERIC-+ (cost 10)
; unable to do inline fixnum arithmetic (cost 2) because:
; The first argument is a NUMBER, not a FIXNUM.
; The second argument is a NUMBER, not a FIXNUM.
; The result is a (VALUES NUMBER &OPTIONAL), not a (VALUES FIXNUM &OPTIONAL).
; unable to do inline float arithmetic (cost 2) because:
; The first argument is a NUMBER, not a SINGLE-FLOAT.
; The second argument is a NUMBER, not a SINGLE-FLOAT.
; The result is a (VALUES NUMBER &OPTIONAL), not a (VALUES SINGLE-FLOAT
; &OPTIONAL).
; etc.
; in: DEFUN MAIN
; (ELT KNUCLEOTIDE2::*MY-TASK-LIST* 0)
;
; note: unable to
; optimize
; due to type uncertainty:
; The first argument is a VECTOR, not a (SIMPLE-ARRAY * (*)).
; (ELT KNUCLEOTIDE2::*MY-TASK-LIST* 1)
;
; note: unable to
; optimize
; due to type uncertainty:
; The first argument is a VECTOR, not a (SIMPLE-ARRAY * (*)).
; (ELT KNUCLEOTIDE2::*MY-TASK-LIST* 2)
;
; note: unable to
; optimize
; due to type uncertainty:
; The first argument is a VECTOR, not a (SIMPLE-ARRAY * (*)).
;
; compilation unit finished
; caught 2 STYLE-WARNING conditions
; printed 19 notes
; wrote /home/dunham/all-benchmarksgame/benchmarksgame_i53330/knucleotide/tmp/knucleotide.sbcl-6.fasl
; compilation finished in 0:00:00.234
### START knucleotide.sbcl-6.sbcl_run
(main) (quit)
### END knucleotide.sbcl-6.sbcl_run
2.59s to complete and log all make actions
COMMAND LINE:
/opt/src/sbcl-2.4.8/bin/sbcl --noinform --core sbcl.core --userinit /dev/null --load knucleotide.sbcl-6.sbcl_run 0 < knucleotide-input25000000.txt
PROGRAM OUTPUT:
A 30.295
T 30.151
C 19.800
G 19.754
AA 9.177
TA 9.132
AT 9.131
TT 9.091
CA 6.002
AC 6.001
AG 5.987
GA 5.984
CT 5.971
TC 5.971
GT 5.957
TG 5.956
CC 3.917
GC 3.911
CG 3.909
GG 3.902
1471758 GGT
446535 GGTA
47336 GGTATT
893 GGTATTTTAATT
893 GGTATTTTAATTTATAGT