aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* abeobk initial implementationabeobk2024-01-123-0/+269
|
* second try: just testing with the chunk size and gc tunningRafael Merino García2024-01-122-2/+3
|
* Improved my implementationXylitol2024-01-121-173/+93
|
* Update create_fork.shivanklaric2024-01-121-2/+2
| | | Updated create_fork.sh to account for the CalculateAverage class name change
* Add CalculateAverage_ianopolous.java (#346)Dr Ian Preston2024-01-122-0/+220
| | | | | * Add solution by ianopolous - simple, memory mapped, reduced allocation, no unsafe. * remove almost all allocation
* Locally another 5% faster, much faster for larger set, made more general (#352)Roy van Rijn2024-01-121-75/+113
|
* Adding Scanner object and also tuning for better branch prediction for about ↵Thomas Wuerthinger2024-01-122-101/+183
| | | | +6%. (#341)
* Optimizations to Andrew Sun's entry (#310)Andrew Sun2024-01-122-66/+165
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* this hashmap was faster on my system (#304)John Ziamos2024-01-122-200/+260
| | | use cursor style parsing thing
* 1brc submission - thanhtrinity (#269)Thanh Duong2024-01-123-0/+298
| | | | | | | | | * Add Calculation * Update hashing remove abs and use 0x7FFFFFFF * Collision Handling using Linear Prob * Refactor code
* Graal Native for SamuelYvon (#332)Samuel Yvon2024-01-123-21/+144
| | | | | | | | | | | | | | | | | | | * 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
* Leader boardGunnar Morling2024-01-121-3/+4
|
* unsafe approachQuan Anh Mai2024-01-122-0/+401
|
* Update class name in calculate_average_baseline.shBang NGUYEN2024-01-121-1/+1
|
* Leaderboard updateGunnar Morling2024-01-122-72/+8
|
* use unsafe (#343)zerninv2024-01-122-73/+110
|
* Lazy strings init, custom station map (#336)Roman Romanchuk2024-01-121-20/+36
|
* I optimized my solution: (#337)Yavuz Tas2024-01-122-205/+273
| | | | | | | | - 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>
* inline hash calculation and number parsing (#200)Parth Mudgal2024-01-122-204/+210
| | | | | | | no number parsing with precalculated map verify tests better loop with direct hash to measurement mapping accept formatting changes Use unsafe
* [Attempt 1] Memory mapping + split by linebreak + multithreads + fast double ↵Bang NGUYEN2024-01-122-0/+306
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Leaderboard, class nameGunnar Morling2024-01-122-3/+3
|
* :ledger: docs(README.md): Fix link to baseline code (#344)Stanley Lim2024-01-121-1/+1
| | | | | | | | | * :ledger: docs(README.md): Fix link to baseline code * Update README.md --------- Co-authored-by: Gunnar Morling <gunnar.morling@googlemail.com>
* update richardstartin submission (#325)Richard Startin2024-01-121-184/+127
|
* hundredwatt - 2nd submission (#338)Jason Nochlin2024-01-122-46/+195
| | | | | | | | | | | | | * 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>
* Use bash in prepare scripts (#339)Alexander Yastrebov2024-01-125-7/+6
| | | | | | 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`.
* Update pull_request_template.mdGunnar Morling2024-01-111-1/+2
|
* FormattingGunnar Morling2024-01-111-3/+3
|
* Leaderboard updateGunnar Morling2024-01-112-2/+5
|
* First attempt from ricardopieper, class CalculateAverage_ricardopieper (#306)Ricardo Pieper2024-01-113-0/+485
| | | | | | | | | | | | | | | | | | | | | | | * 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 (#153)Jaroslav Bachorik2024-01-113-0/+433
| | | | | | | | | | | | | | | | | | * 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
* Initial implementation by xylitol (#318)Xylitol2024-01-113-0/+353
|
* use custom container (#305)zerninv2024-01-111-46/+73
|
* Leaderboard updateGunnar Morling2024-01-112-2/+3
|
* First deployed version for parkertimmins (#322)parkertimmins2024-01-112-0/+350
| | | | | Version notes: - simd search with overlapping words, at most one entry/semicolon parsed per simd word - branchless temperature parsing
* Leaderboard updateGunnar Morling2024-01-115-11/+16
|
* Adding delayed string creation again for (no-) gc, small tweaks (#315)Roy van Rijn2024-01-111-33/+38
|
* create_fork.sh: Script to Create a New Fork (#296)Jason Nochlin2024-01-112-6/+92
| | | | | | | | | | | | | | | * 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 (#254)Jairo Graterón2024-01-111-75/+221
| | | | | | | | | | | | | | | | | * 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
* One HashMap per thread: 23" to 18" locally but hopefully more on the server ↵Anthony Goubard2024-01-111-10/+22
| | | | (#319)
* improved artsiomkorzun solution (#321)Artsiom Korzun2024-01-112-176/+139
|
* Optimised Code and Fixed Tests (#314)Keshavram Kuduwa2024-01-112-148/+120
| | | Co-authored-by: Keshavram Kuduwa <keshavram.kuduwa@apptware.com>
* Uses MappedByteBuffer for io, trie instead of map and parallelStream (#234)Hallvard Trætteberg2024-01-112-0/+329
| | | | | * Uses MappedByteBuffer for io, trie instead of map and parallelStream * Added license
* djb2 single threaded implementation (#308)Eve2024-01-112-0/+218
|
* First Version (#292)Samuel Yvon2024-01-113-0/+287
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
* Entry into the contest, calculate_average_mtopolnik.sh (#246)Marko Topolnik2024-01-113-0/+570
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* First submission - CalculateAverage_JamalMulla.java - Jamal Mulla (#238)Jamal Mulla2024-01-113-0/+341
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
* Fixed failing testsRoman Romanchuk2024-01-112-21/+55
|
* test_all.sh: configure fork test timeoutAlexander Yastrebov2024-01-111-3/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 ```
* Update README.mdGunnar Morling2024-01-111-0/+3
|
* Update README - newline not allowed in station namesparkertimmins2024-01-111-2/+2
| | | | | Per https://github.com/gunnarmorling/1brc/discussions/311 station names will not contain newline characters.