Commit Graph

721 Commits

Author SHA1 Message Date
Jaromir Hamala
927880b97e edge-case in hashing fixed (#459)
also a bunch of smaller improvements
2024-01-17 18:28:03 +01:00
Roman Musin
77872e197d Version 3 (#455) 2024-01-17 18:07:56 +01:00
Gunnar Morling
1bbddaaaf6 Leaderboard update 2024-01-16 22:55:16 +01:00
gonix
7f5f808176 CalculateAverage_gonix initial attempt (#413) 2024-01-16 22:49:39 +01:00
karthikeyan97
455b85c5af karthikeyan97 implementation (#417)
Co-authored-by: Karthikeyans <karthikeyan.sn@zohocorp.com>
2024-01-16 22:46:11 +01:00
Peter Levart
ffb09bf4bf plevart: Look Mom No Unsafe! (#452) 2024-01-16 22:34:40 +01:00
Gunnar Morling
7ed5e1b0d4 Leaderboard, formatting 2024-01-16 22:31:50 +01:00
Van Phu DO
1804fc5b5f Native build, less memory acess, improved hash mixing (#449) 2024-01-16 22:31:00 +01:00
adri
576291611d Memory mapped buffers, ints instead of floats and epsilon GC (#451)
* Modify baseline version to improve performance

- Consume and process stream in parallel with memory map buffers, parsing it directly
- Use int instead of float/double to store values
- Use Epsilon GC and graal

* Update src/main/java/dev/morling/onebrc/CalculateAverage_adriacabeza.java

* Update calculate_average_adriacabeza.sh

---------

Co-authored-by: Gunnar Morling <gunnar.morling@googlemail.com>
2024-01-16 22:23:35 +01:00
Anthony Goubard
e4b717e1a4 Read file in multiple threads and String to Text (#427)
* - Read file in multiple threads if available: 17" -> 15" locally
- Changed String to BytesText with cache: 12" locally

* - Fixed bug
- BytesText to Text
- More checks when reading the file

* - Combining measurements should be thread safe
- More readability changes
2024-01-16 22:10:38 +01:00
Arman Sharif
7bd2df7c59 armandino: second attempt (#445) 2024-01-16 22:04:37 +01:00
Keshavram Kuduwa
b1e6a120a4 Optimised code to iterate over non-null measurements (#444)
Co-authored-by: Keshavram Kuduwa <keshavram.kuduwa@apptware.com>
2024-01-16 22:02:26 +01:00
Artsiom Korzun
c080143ca8 fix masking (#442)
fix masking

fix masking
2024-01-16 21:54:42 +01:00
Gunnar Morling
f8874c3886 Leaderboard update 2024-01-15 21:21:38 +01:00
Artsiom Korzun
073d3aecdf native version (#434) 2024-01-15 21:07:53 +01:00
Gunnar Morling
116f623f3e Leaderboard update 2024-01-15 21:07:30 +01:00
Farid
07ac6a53c3 CalculateAverage_faridtmammadov (#406)
* create calculate average frd

* rename to mach github username

* add licesnce header

* make script executable

---------

Co-authored-by: Farid Mammadov <farid.mammadov@simbrella.com>
2024-01-15 21:01:16 +01:00
Jin Cong Ho
b7c24f95cd Submission #2: jincongho (#416) 2024-01-15 20:48:32 +01:00
Gunnar Morling
6df2863cfc Leaderboard update 2024-01-15 20:43:50 +01:00
Thomas Wuerthinger
be179dcf07 Improve scheduling for thomaswue (#358)
* Improve scheduling for another 6%.

* Tune hash function and collision handling.
2024-01-15 20:43:12 +01:00
Bartłomiej Pietrzyk
c926aab444 Initial 1brc version by plbpietrz (#219)
* Initial version

* Small result merge optimisation

* Switched from reading bytes to longs

* Reading into internal buffer, test fixes

* Licence and minor string creation optimisation

* Hash collision fix
2024-01-15 20:30:04 +01:00
zerninv
d18b10708b Sixth attempt CalculateAverage_zerninv.java (#407)
* rethink chunking

* fix typo
2024-01-15 20:25:52 +01:00
Gunnar Morling
dd9a3dde7e Update pull_request_template.md 2024-01-15 20:12:31 +01:00
Vemana
6fe395cbae Squashing a bunch of commits together. (#428)
Commit#2; Uplift of 7% using native byteorder from ByteBuffer.
Commit#1: Minor changes to formatting.

Co-authored-by: vemana <vemana.github@gmail.com>
2024-01-15 20:10:50 +01:00
Arjen Wisse
702d41df15 Small optimizations (#426) 2024-01-15 20:00:52 +01:00
Artsiom Korzun
987da54906 branchy version (#408) 2024-01-15 19:57:34 +01:00
Gunnar Morling
ca075b66f2 Leaderboard update 2024-01-15 19:04:29 +01:00
eriklumme
785e517c14 CalculateAverage_eriklumme first submission (#221)
* Initial commit with custom implementation, 2:40

* Initial file-channel based version, 1:27

* Individual maps for executors, 0:54

* Use better-suited map: 0:34

* Verified correct, skip CharBuffer, :37

* Minor improvements and cleanup, 0:24

* String to byte[], 0:21

* Additional cleanup, use GraalVM, 0:17

* Faster number handling, 0:11

* Faster buffer reading, 0:08

* Prepare for environment with variable RAM and CPU, 0:08

* Fix bug causing issues with certain buffer sizes

* Larger overhead to not miss long station names that overlap buffers

* Reorder scripts and fix one-off bug
2024-01-15 19:03:51 +01:00
Dr Ian Preston
eaa4050a1b 12s (25%) faster on 4 core i7 (#421) 2024-01-15 18:58:23 +01:00
Jaromir Hamala
dbdd89a847 jerrinot's initial submission (#424)
* initial version

let's exploit that superscalar beauty!

* give credits where credits is due

also: added ideas I don't want to forget
2024-01-15 18:55:22 +01:00
Van Phu DO
677d94e5cf Optimized with less constructor args + low collision mixer (#420)
* use all CPUs

* use graal

* optimized with less constructor arg

* optimized with low collision mixer
2024-01-15 18:53:31 +01:00
Marko Topolnik
ecab306338 10k improvement (#419)
* Remove commented-out params from the script

* General cleanup and refactoring

* Deoptimize parseTemperatureSimple

* Optimize nameEquals()
2024-01-15 18:49:32 +01:00
Pratham
6c7012a43e Add improvements (#412)
- custom hashmap
- avoid string creation
- use graal
2024-01-15 18:47:06 +01:00
Eve
cd0e20b304 multithreaded version! (#415) 2024-01-15 18:39:36 +01:00
Gunnar Morling
61f5618ff2 Adding list of external resources 2024-01-14 22:02:21 +01:00
Gunnar Morling
d262b3d199 Leaderboard 2024-01-14 21:06:37 +01:00
Bruno Félix
bb5679f463 Further improved performance by improving the parsing logic so that strings for city names are not allocated with each row. (#323)
Co-authored-by: Bruno Felix <bruno.felix@klarna.com>
2024-01-14 20:56:11 +01:00
zerninv
990f884ff1 change temperature parsing approach (#405) 2024-01-14 20:47:42 +01:00
Gunnar Morling
5fb1218064 Leaderboard update 2024-01-14 19:12:29 +01:00
unbounded
f9fb9bb384 Add implementation for user unbounded (#394)
Implementation that uses the Vector API for the following
 - scan for separators
 - calculate hash
 - n-way lookup in hash table
 - parse digits

e; fix queue size
2024-01-14 19:11:57 +01:00
Jesse Van Rooy
30987d778c CalculateAverage_JesseVanRooy (Submission 1) (#335)
* Submission #1

* Submission #1 (Fixed casing of file names)

* Submission #1 (Added executable to Git permissions)

* Submission 1 (Fixed incorrect map size)

* Submission 1 (Fixed output problems on Windows)
2024-01-14 19:09:58 +01:00
Stefan Sprenger
3fbc4a2fa8 Update submission (#385)
* feat(flippingbits): Improve parsing of station names

* chore(flippingbits): Remove obsolete import

* feat(flippingbits): Use custom hash map

* feat(flippingbits): Use UNSAFE

* fix(flippingbits): Support very small files

* chore(flippingbits): Few cleanups

* chore(flippingbits): Align names

* fix(flippingbits): Initialize hash with first byte

* fix(flippingbits): Fix initialization of hash value
2024-01-14 19:06:01 +01:00
Arjen Wisse
fc6fca4315 My attempt to parse it quickly (#401)
* My approach

* Update calculate_average_arjenw.sh

---------

Co-authored-by: Gunnar Morling <gunnar.morling@googlemail.com>
2024-01-14 19:03:07 +01:00
Jin Cong Ho
32bb237091 Initial Submission (#389)
Co-authored-by: Gunnar Morling <gunnar.morling@googlemail.com>
2024-01-14 18:50:24 +01:00
Dmitry Bufistov
0ca7c485aa Dmitry challenge 2024-01-14 18:45:30 +01:00
Anita SV
3c36b5b0a8 A SAFE and readable version (#388)
* A SAFE and readable version

* Remove unused functions

* Making it slower, removing custom hashMap
2024-01-14 18:41:04 +01:00
tkosachev
1fd4712ed3 CalculateAverage_tkosachev
Runs 13.5 sec using 8 cores of i7-1265U laptop with 16 GB RAM.
2024-01-14 18:36:20 +01:00
Bruno Félix
6112c14044 Added license header to create_measurements.py (#403)
* Update create_measurements.py

Added license header to the python script to avoid breaking the build.

* Update src/main/python/create_measurements.py

---------

Co-authored-by: Gunnar Morling <gunnar.morling@googlemail.com>
2024-01-14 18:29:48 +01:00
Gunnar Morling
7235968626 Leaderboard 2024-01-14 14:35:12 +01:00
Charlie Evans
695760b31b Charlibot - use memory mapping (#372)
* add memory map approach

* cleanup
2024-01-14 14:34:08 +01:00