| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| | |
|
| | |
|
| |
|
| |
Updated create_fork.sh to account for the CalculateAverage class name change
|
| |
|
|
|
| |
* Add solution by ianopolous - simple, memory mapped, reduced allocation, no unsafe.
* remove almost all allocation
|
| | |
|
| |
|
|
| |
+6%. (#341)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Squashed commit of the following:
commit 44d3736de87834b41118d45831e59fc2b052117c
Merge: fcf795f 3127962
Author: Andrew Sun <as-com@users.noreply.github.com>
Date: Thu Jan 11 20:01:13 2024 -0500
Merge branch 'gunnarmorling:main' into as-com
commit fcf795fbabacbd91891d11d21450ee4b1c479dc5
Author: Andrew Sun <me@andrewsun.com>
Date: Wed Jan 10 21:14:01 2024 -0500
Optimizations to Andrew Sun's entry
commit 4203924711bab5252ff3cbb50a90f4ce4e8e67c2
Merge: 9aed05a 085168a
Author: Andrew Sun <me@andrewsun.com>
Date: Wed Jan 10 19:40:19 2024 -0500
Merge remote-tracking branch 'upstream/main' into as-com
commit 9aed05a04bd27fe7323e66c347b1011c77da322c
Merge: 3f8df58 c2d120f
Author: Andrew Sun <me@andrewsun.com>
Date: Sun Jan 7 16:45:27 2024 -0500
Merge remote-tracking branch 'origin/as-com' into as-com
# Conflicts:
# calculate_average_asun.sh
# src/main/java/dev/morling/onebrc/CalculateAverage_asun.java
commit c2d120f0cb7f18c720a81a7f898102b310f9ecb9
Author: Andrew Sun <me@andrewsun.com>
Date: Sat Jan 6 00:45:47 2024 -0500
Add entry by Andrew Sun
commit 3f8df5803bcc8f3e29ed8bfff3077eb0e8cdab15
Author: Andrew Sun <me@andrewsun.com>
Date: Sat Jan 6 00:45:47 2024 -0500
Add entry by Andrew Sun
|
| |
|
| |
use cursor style parsing thing
|
| |
|
|
|
|
|
|
|
| |
* Add Calculation
* Update hashing remove abs and use 0x7FFFFFFF
* Collision Handling using Linear Prob
* Refactor code
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Graal Native
* I need a GC :(
* Fix slash lolz
* Fix god damn output lol
I forgot java :D
* Custom hash, custom key
* More optimisations
* I don't need "optimize-build"
I don't care about image size! :D
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
| |
- Eliminate redundant object creations in between
- Custom HashMap on purpose - Inspired by @spullara
- More performant temperature parsing - Inspired by @yemreinci
- JVM tweaks, decreased heap memory, and remove AlwaysPreTouch
Co-authored-by: Yavuz Tas <yavuz.tas@ing.com>
|
| |
|
|
|
|
|
| |
no number parsing with precalculated map
verify tests
better loop with direct hash to measurement mapping
accept formatting changes
Use unsafe
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
parser (#330)
* Create clones
* Cleanup code and add memory mapping to read file
* Fix chunks reading logic to fit linebreak
* Remove unused
* Sequential
* Multi thread process chunks
* Add new line in output
* Remove unnecessary operation with map & reducer memory
* Reduce mem usage by using only 1 map
* formatting
* Remove unnecessary length check
* Remove trycatch
* Optimize double parsing
|
| | |
|
| |
|
|
|
|
|
|
|
| |
* :ledger: docs(README.md): Fix link to baseline code
* Update README.md
---------
Co-authored-by: Gunnar Morling <gunnar.morling@googlemail.com>
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
* check full hash before comparing
* implement merykitty suggestions to simplify temperature masking; required refactoring to little-endian
* standalone script for offline Perfect Hash seed searching
* stop using an oversized hash table
---------
Co-authored-by: Jason Nochlin <hundredwatt@users.noreply.github.com>
|
| |
|
|
|
|
| |
Prepare scripts that use `#!/bin/sh` and
`source "$HOME/.sdkman/bin/sdkman-init.sh"`
fail on systems where `sh` is not `bash`,
e.g. on Ubuntu it is `dash` which has not `source`.
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* My entry
* Added scripts
* Fix for unicode chars
* Formatting
* Clarifying comment
* Perf improvements
* Fixing bugs
* Fixing tests
* Deleted second file
* Added license
* Cleanup and windows support
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Submission @jbachorik
* Submission @jbachorik (take 2)
* Fix test failure
* Submission @jbachorik (take 2)
* Submission @jbachorik (take 2)
part 2
* Second reincarnation
* Launcher tweaks
* Rebase and fix new tests
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
Version notes:
- simd search with overlapping words, at most one entry/semicolon parsed per simd word
- branchless temperature parsing
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Script to Create a New Fork
* validate fork name
* use interactive prompt to prevent accidentally overwriting existing fork
* recommend create_fork.sh in the README
* remove mention of additional_builds_steps (obsolete)
---------
Co-authored-by: Jason Nochlin <hundredwatt@users.noreply.github.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* divide the reading of the file by parts
* fix format
* add number of core partition
* fix format
* implement strToDouble
* fix strtodouble
* add locale, fix read file, tests pass
* delete unnecessary method clean
|
| |
|
|
| |
(#319)
|
| | |
|
| |
|
| |
Co-authored-by: Keshavram Kuduwa <keshavram.kuduwa@apptware.com>
|
| |
|
|
|
| |
* Uses MappedByteBuffer for io, trie instead of map and parallelStream
* Added license
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* First Version
First draft; stole chunking but it's bad
Forgot my changes
No regex building
Clean & optim
I was not benchmarking myself T_T
Faaaster
First Version
* Update calculate_average_samuelyvon.sh
Co-authored-by: Gunnar Morling <gunnar.morling@googlemail.com>
* Add prepare script
* Fix rounding
* Fix format
* Fixing casing
* Formats of sorts?
* Rename
---------
Co-authored-by: Gunnar Morling <gunnar.morling@googlemail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* calculate_average_mtopolnik
* short hash (just first 8 bytes of name)
* Remove unneeded checks
* Remove archiving classes
* 2x larger hashtable
* Add "set" to setters
* Simplify parsing temperature, remove newline search
* Reduce the size of the name slot
* Store name length and use to detect collision
* Reduce memory loads in parseTemperature
* Use short for min/max
* Extract constant for semicolon
* Fix script header
* Explicit bash shell in shebang
* Inline usage of broadcast semicolon
* Try vectorization
* Remove vectorization
* Go Unsafe
* Use SWAR temperature parsing by merykitty
* Inline some things
* Remove commented-out MemorySegment usage
* Inline namesMem.asSlice() invocation
* Try out JVM JIT flags
* Implement strcmp
* Remove unused instance variables
* Optimize hashing
* Put station name into hashtable
* Reorder method
* Remove usage of MemorySegment.getUtf8String
Replace with UNSAFE.copyMemory() and new String()
* Fix hashing bug
* Remove outdated comments
* Fix informative constants
* Use broadcastByte() more
* Improve method naming
* More hashing
* Revert more hashing
* Add commented-out code to hash 16 bytes
* Slight cleanup
* Align hashtable at cacheline boundary
* Add Graal Native image
* Revert Graal Native image
This reverts commit d916a42326d89bd1a841bbbecfae185adb8679d7.
* Simplify shell script (no SDK selection)
* Move a constant, zero out hashtable on start
* Better name comparison
* Add prepare_mtopolnik.sh
* Cleaner idiom in name comparison
* AND instead of MOD for hashtable indexing
* Improve word masking code
* Fix formatting
* Reduce memory loads
* Remove endianness checks
* Avoid hash == 0 problem
* Fix subtle bug
* MergeSort of parellel results
* Touch up perf
* Touch up perf
* Remove -Xmx256m
* Extract result printing method
* Print allocation details on OOME
* Single mmap
* Use global allocation arena
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Initial chunked impl
* Bytes instead of chars
* Improved number parsing
* Custom hashmap
* Graal and some tuning
* Fix segmenting
* Fix casing
* Unsafe
* Inlining hash calc
* Improved loop
* Cleanup
* Speeding up equals
* Simplifying hash
* Replace concurrenthashmap with lock
* Small changes
* Script reorg
---------
Co-authored-by: Jamal Mulla <j.mulla@mwam.com>
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Example output:
```
$ ./test_all.sh 2>/dev/null
PASS abfrmblr
PASS AbstractKamen
PASS ags313
PASS alesj
PASS algirdasrascius
PASS anandmattikopp
PASS arjenvaneerde
FAIL armandino
TIME artpar
PASS artsiomkorzun
PASS asun
PASS baseline
PASS berry120
PASS bjhara
PASS charlibot
PASS coolmineman
PASS couragelee
PASS criccomini
PASS davecom
PASS davery22
PASS ddimtirov
PASS deemkeen
PASS ebarlas
PASS entangled90
FAIL fatroom
PASS felix19350
PASS filiphr
PASS flippingbits
PASS fragmede
PASS gabrielreid
PASS gamlerhart
PASS gnmathur
PASS hchiorean
FAIL hundredwatt
PASS imrafaelmerino
PASS isolgpus
PASS itaske
PASS iziamos
PASS japplis
PASS jgrateron
PASS jotschi
PASS kevinmcmurtrie
PASS kgeri
PASS khmarbaise
PASS kuduwa-keshavram
PASS kumarsaurav123
FAIL lawrey
PASS maeda6uiui
PASS MeanderingProgrammer
PASS merykitty
FAIL moysesb
PASS mudit-saxena
PASS obourgain
PASS padreati
PASS palmr
PASS pedestrianlove
PASS phd3
PASS raipc
PASS rby
PASS richardstartin
FAIL roman-r-m
PASS royvanrijn
PASS rprabhu
PASS santanu
PASS seijikun
PASS semotpan
PASS spullara
PASS thomaswue
PASS truelive
FAIL twobiers
PASS Ujjwalbharti
PASS yavuztas
PASS yehwankim23
FAIL yemreinci
PASS zerninv
```
|
| | |
|
| |
|
|
|
| |
Per https://github.com/gunnarmorling/1brc/discussions/311 station names
will not contain newline characters.
|