Permalink
Browse files

Initial version of a bunch of files.

  • Loading branch information...
1 parent cc311e1 commit 1f99a2bca99224d297839beafc96d9ab825de414 @jafingerhut committed Jul 29, 2009
Showing with 5,266 additions and 0 deletions.
  1. +178 −0 COPYING
  2. +106 −0 RESULTS
  3. +32 −0 env.sh
  4. +94 −0 fasta/batch.sh
  5. +106 −0 fasta/fasta.ghc-2.ghc
  6. +150 −0 fasta/fasta.java-2.java
  7. +121 −0 fasta/fasta.perl-4.perl
  8. +141 −0 fasta/fasta.sbcl
  9. +14 −0 fasta/fasta.sbcl_compile
  10. +10 −0 fasta/fasta.sbcl_run
  11. +7 −0 fasta/ghc-compile.sh
  12. +5 −0 fasta/ghc-run.sh
  13. +9 −0 fasta/java-compile.sh
  14. +5 −0 fasta/java-run.sh
  15. +6 −0 fasta/sbcl-compile.sh
  16. +5 −0 fasta/sbcl-run.sh
  17. +6 −0 fclean.sh
  18. +6 −0 fwaste.sh
  19. +54 −0 init.sh
  20. +84 −0 knuc/batch.sh
  21. +14 −0 knuc/clj-run.sh
  22. +7 −0 knuc/ghc-compile.sh
  23. +5 −0 knuc/ghc-run.sh
  24. +10 −0 knuc/java-compile.sh
  25. +5 −0 knuc/java-run.sh
  26. +185 −0 knuc/knucleotide.andys.java
  27. +175 −0 knuc/knucleotide.clj
  28. +166 −0 knuc/knucleotide.clj-2.clj
  29. +177 −0 knuc/knucleotide.clj-3.clj
  30. +202 −0 knuc/knucleotide.clj-4.clj
  31. +331 −0 knuc/knucleotide.ghc-3.ghc
  32. +185 −0 knuc/knucleotide.java-3.java
  33. +29 −0 knuc/knucleotide.perl-2.perl
  34. +121 −0 knuc/knucleotide.sbcl-3.sbcl
  35. +13 −0 knuc/knucleotide.sbcl-3.sbcl_compile
  36. +10 −0 knuc/knucleotide.sbcl-3.sbcl_run
  37. +6 −0 knuc/sbcl-compile.sh
  38. +8 −0 knuc/sbcl-run.sh
  39. +97 −0 mandelbrot/batch.sh
  40. +7 −0 mandelbrot/clj-run.sh
  41. +7 −0 mandelbrot/ghc-compile.sh
  42. +5 −0 mandelbrot/ghc-run.sh
  43. +9 −0 mandelbrot/java-compile.sh
  44. +5 −0 mandelbrot/java-run.sh
  45. +129 −0 mandelbrot/mandelbrot.andys.java
  46. +129 −0 mandelbrot/mandelbrot.clj
  47. +143 −0 mandelbrot/mandelbrot.conses-too-much1.clj
  48. +160 −0 mandelbrot/mandelbrot.conses-too-much2.clj
  49. +107 −0 mandelbrot/mandelbrot.ghc-2.ghc
  50. +117 −0 mandelbrot/mandelbrot.java-3.java
  51. +83 −0 mandelbrot/mandelbrot.no-threads.java
  52. +43 −0 mandelbrot/mandelbrot.no-threads.perl
  53. +61 −0 mandelbrot/mandelbrot.perl
  54. +91 −0 mandelbrot/mandelbrot.sbcl
  55. +13 −0 mandelbrot/mandelbrot.sbcl_compile
  56. +10 −0 mandelbrot/mandelbrot.sbcl_run
  57. +217 −0 mandelbrot/other-code/speed-question.rtf
  58. +86 −0 mandelbrot/other-code/speed06.clj
  59. +35 −0 mandelbrot/other-code/speed07.clj
  60. +86 −0 mandelbrot/other-code/speed08.clj
  61. +26 −0 mandelbrot/other-code/speed09.clj
  62. +80 −0 mandelbrot/other-code/speed10.clj
  63. +6 −0 mandelbrot/sbcl-compile.sh
  64. +8 −0 mandelbrot/sbcl-run.sh
  65. +6 −0 misc/cat-n.clj
  66. +6 −0 misc/in.txt
  67. +39 −0 misc/notes.txt
  68. +42 −0 misc/post2.txt
  69. +17 −0 misc/test-sbcl-input.lisp
  70. +12 −0 misc/tiny-fasta-input.txt
  71. +77 −0 misc/too-much-memory.clj
  72. +20 −0 misc/try.clj
  73. +3 −0 misc/try.sh
  74. +89 −0 rcomp/batch.sh
  75. +10 −0 rcomp/java-compile.sh
  76. +5 −0 rcomp/java-run.sh
  77. +66 −0 rcomp/revcomp.java-4.java
  78. +34 −0 rcomp/revcomp.perl-2.perl
  79. +77 −0 rcomp/revcomp.sbcl
  80. +13 −0 rcomp/revcomp.sbcl_compile
  81. +10 −0 rcomp/revcomp.sbcl_run
  82. +6 −0 rcomp/sbcl-compile.sh
  83. +8 −0 rcomp/sbcl-run.sh
  84. +156 −0 thread-ring/re-threadring-benchmark.rtf
  85. +22 −0 thread-ring/thread-ring.clj
View
178 COPYING
@@ -0,0 +1,178 @@
+Here is a list of all files, and the license they fall under.
+
+The abbreviations used in the file list below are defined here:
+
+----------------------------------------------------------------------
+B - Computer Language Benchmarks Game Revised BSD license
+----------------------------------------------------------------------
+
+http://shootout.alioth.debian.org/u32q/miscfile.php?file=license&title=revised%20BSD%20license
+
+This is a specific instance of the Open Source Initiative (OSI) BSD
+license template.
+
+http://www.opensource.org/licenses/bsd-license.php
+
+
+Copyright © 2004-2009 Brent Fulgham
+
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+ copyright notice, this list of conditions and the following
+ disclaimer in the documentation and/or other materials provided
+ with the distribution.
+ * Neither the name of "The Computer Language Benchmarks Game" nor
+ the name of "The Computer Language Shootout Benchmarks" nor the
+ names of its contributors may be used to endorse or promote
+ products derived from this software without specific prior
+ written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+----------------------------------------------------------------------
+A - Copyright 2009 Andy Fingerhut - Revised BSD license
+----------------------------------------------------------------------
+This is a specific instance of the Open Source Initiative (OSI) BSD
+license template.
+
+http://www.opensource.org/licenses/bsd-license.php
+
+
+Copyright (c) 2009, John Andrew Fingerhut
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+
+ * Redistributions in binary form must reproduce the above
+ copyright notice, this list of conditions and the following
+ disclaimer in the documentation and/or other materials provided
+ with the distribution.
+
+ * The name of John Andrew Fingerhut may not be used to endorse or
+ promote products derived from this software without specific
+ prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+----------------------------------------------------------------------
+
+A COPYING
+A env.sh
+A fasta/batch.sh
+B fasta/fasta.ghc-2.ghc
+B fasta/fasta.java-2.java
+B fasta/fasta.perl-4.perl
+B fasta/fasta.sbcl
+B fasta/fasta.sbcl_compile
+B fasta/fasta.sbcl_run
+B fasta/ghc-compile.sh
+B fasta/ghc-run.sh
+A fasta/java-compile.sh
+A fasta/java-run.sh
+A fasta/sbcl-compile.sh
+A fasta/sbcl-run.sh
+A fclean.sh
+A fwaste.sh
+A init.sh
+A knuc/batch.sh
+A knuc/clj-run.sh
+B knuc/ghc-compile.sh
+B knuc/ghc-run.sh
+A knuc/java-compile.sh
+A knuc/java-run.sh
+B knuc/knucleotide.andys.java
+A knuc/knucleotide.clj
+A knuc/knucleotide.clj-2.clj
+A knuc/knucleotide.clj-3.clj
+A knuc/knucleotide.clj-4.clj
+B knuc/knucleotide.ghc-3.ghc
+B knuc/knucleotide.java-3.java
+B knuc/knucleotide.perl-2.perl
+B knuc/knucleotide.sbcl-3.sbcl
+B knuc/knucleotide.sbcl-3.sbcl_compile
+B knuc/knucleotide.sbcl-3.sbcl_run
+A knuc/sbcl-compile.sh
+A knuc/sbcl-run.sh
+A mandelbrot/batch.sh
+A mandelbrot/clj-run.sh
+B mandelbrot/ghc-compile.sh
+B mandelbrot/ghc-run.sh
+A mandelbrot/java-compile.sh
+A mandelbrot/java-run.sh
+B mandelbrot/mandelbrot.andys.java
+A mandelbrot/mandelbrot.clj
+A mandelbrot/mandelbrot.conses-too-much1.clj
+A mandelbrot/mandelbrot.conses-too-much2.clj
+B mandelbrot/mandelbrot.ghc-2.ghc
+B mandelbrot/mandelbrot.java-3.java
+B mandelbrot/mandelbrot.no-threads.java
+B mandelbrot/mandelbrot.no-threads.perl
+B mandelbrot/mandelbrot.perl
+B mandelbrot/mandelbrot.sbcl
+B mandelbrot/mandelbrot.sbcl_compile
+B mandelbrot/mandelbrot.sbcl_run
+ mandelbrot/other-code/speed-question.rtf
+O mandelbrot/other-code/speed06.clj
+O mandelbrot/other-code/speed07.clj
+O mandelbrot/other-code/speed08.clj
+O mandelbrot/other-code/speed09.clj
+O mandelbrot/other-code/speed10.clj
+A mandelbrot/sbcl-compile.sh
+A mandelbrot/sbcl-run.sh
+A misc/cat-n.clj
+A misc/clj-batch.sh
+ misc/in.txt
+A misc/notes.txt
+ misc/perl-batch.sh
+ misc/post2.txt
+ misc/sbcl-batch.sh
+ misc/test-sbcl-input.lisp
+ misc/tiny-fasta-input.txt
+A misc/too-much-memory.clj
+A misc/try.clj
+A misc/try.sh
+A rcomp/batch.sh
+A rcomp/java-compile.sh
+A rcomp/java-run.sh
+B rcomp/revcomp.java-4.java
+B rcomp/revcomp.perl-2.perl
+B rcomp/revcomp.sbcl
+B rcomp/revcomp.sbcl_compile
+B rcomp/revcomp.sbcl_run
+A rcomp/sbcl-compile.sh
+A rcomp/sbcl-run.sh
+A README
+A RESULTS
+ thread-ring/re-threadring-benchmark.rtf
+ thread-ring/thread-ring.clj
View
106 RESULTS
@@ -0,0 +1,106 @@
+iMac specs:
+
+2.16 GHz Intel Core 2 Duo (2 cores)
+2 GB RAM 667 MHz DDR2 SDRAM
+Running Mac OS X 10.5.7
+
+"The Computer Language Benchmarks Game" web site benchmark machine:
+
+Quad-core 2.4Ghz Intel Q6600
+4GB RAM
+250GB SATA II disk drive
+Ubuntu (TM) 9.04 Linux Kernel 2.6.28-11-generic
+
+
+Times are real / user / sys on my iMac
+
+ | sbcl | perl | ghc | java | clj
+-----------------------------------------------------
+ noT noT | noT
+long test on my iMac:
+rcomp | 8.3 | 11.9 | | 8.5 | no implementation yet
+ | 4.8 | 7.9 | | 3.6 |
+ | 2.1 | 2.3 | | 1.4 |
+
+long test on my iMac:
+mand- | wrong | out of | 32.7 | 28.6 | 340.4
+elbrot | output | mem | 59.3 | 54.4 | 350.5
+ | | (?) | 0.8 | 0.4 | 4.7
+
+ noT noT | T
+long test on my iMac:
+k-nuc- | 190.9 | 306.0 | 90.5 | 52.4 | 1677.6 (27m 57.6s)
+leotide | 187.9 | 302.7 | 130.8 | 89.6 | 2245.1 (37m 25.1s)
+ | 2.4 | 1.9 | 4.6 | 1.8 | 24.2 ( 24.2s)
+
+Disappointing result: Replacing dna-char-to-code-val with a macro did
+not speed things up, and may have slowed them down:
+ | 1800.0 (30m 0.0s)
+ | 2317.0 (38m 37.0s)
+ | 30.6 ( 30.6s)
+
+k-nucleotide long test on benchmark shootout machine:
+ | 164.9 | 249.8 | 52.0 | 20.6 |
+ | 164.9 | 246.7 | 112.5 | 58.8 |
+ | ? | ? | ? | ? |
+
+k-nucleotide medium test on my iMac:
+ | 8.6 | 12.7 | 3.9 | 3.9 | 64.2 / 69.6 / 69.1 / 67.1
+ | 7.9 | 12.5 | 5.4 | 5.7 | 98.4 / 92.9 / 93.1 / 88.1
+ | 0.6 | 0.1 | 0.3 | 0.2 | 1.5 / 1.6 / 1.6 / 1.7
+
+k-nucleotide medium test, all clj, modified-pmap with specified number
+of parallel threads, on my iMac:
+ | 1 | 2 | 3 | 4 | 5 | 6 |
+ | 74.9 | 70.7 | 77.2 | 76.8 | 82.5 | 77.8 |
+ | 125.9 | 122.1 | 134.6 | 134.0 | 143.4 | 134.0 |
+ | 2.5 | 2.8 | 2.8 | 2.3 | 3.1 | 2.3 |
+
+fasta
+
+thread-ring
+
+
+mandelbrot notes:
+
+sbcl version implemented with threads. I run it with only 1 thread.
+I haven't debugged why it produces the wrong output yet.
+
+perl version implemented with threads, but my Perl implementation
+doesn't have threads, so I made a slight modification for a 1-thread
+version that doesn't use them at all.
+
+There are at least two versions of Java source code on shootout web
+site. I'm using the one that uses threads, not the other one that
+avoids using threads.
+
+----------------------------------------------------------------------
+Hardware and software used
+
+iMac with Intel Core 2 Duo, 2.16 GHz, 2 GB RAM, Mac OS X 10.5.7
+
+% /opt/local/bin/sbcl --version
+SBCL 1.0.24
+% /opt/local/bin/perl -v
+
+This is perl, v5.8.9 built for darwin-2level
+
+Copyright 1987-2008, Larry Wall
+
+Perl may be copied only under the terms of either the Artistic License or the
+GNU General Public License, which may be found in the Perl 5 source kit.
+
+Complete documentation for Perl, including FAQ lists, should be found on
+this system using "man perl" or "perldoc perl". If you have access to the
+Internet, point your browser at http://www.perl.org/, the Perl Home Page.
+
+% java -version
+java version "1.6.0_13"
+Java(TM) SE Runtime Environment (build 1.6.0_13-b03-211)
+Java HotSpot(TM) 64-Bit Server VM (build 11.3-b02-83, mixed mode)
+
+% javac -version
+javac 1.6.0_13
+
+user> (clojure-version)
+"1.1.0-alpha-SNAPSHOT"
View
32 env.sh
@@ -0,0 +1,32 @@
+# Define paths to the executables you want to use on your system, or just
+# leave them without a path name if the commands you want are already in
+# your command path.
+
+# Path to Clojure JAR file
+CLOJURE_JAR=/Users/andy/sw/clojure/clojure/clojure.jar
+
+JAVAC=javac
+JAVA=java
+
+# Choose your style of Java profiling, if any.
+#JAVA_PROFILING=-Xprof
+#JAVA_PROFILING=-Xrunhprof
+JAVA_PROFILING=
+
+# Glasgow Haskell Compiler location
+GHC=ghc
+
+PERL=perl
+
+# The mandelbrot benchmark requires SBCL built with threading enabled.
+# On a Mac, one way to get this is to install MacPorts, and then this
+# to get the threaded version of SBCL:
+#
+# sudo port install sbcl@+threads
+SBCL=/opt/local/bin/sbcl
+unset SBCL_HOME
+
+CP="cp -p"
+RM="/bin/rm"
+DIFF="diff -c"
+CMP="cmp"
Oops, something went wrong.

0 comments on commit 1f99a2b

Please sign in to comment.