summaryrefslogtreecommitdiffstats
path: root/util/datetime
Commit message (Collapse)AuthorAgeFilesLines
* Fix a local time zone time serialization bug on Windowstikhonov-ka2026-05-201-1/+2
| | | | commit_hash:444da85d16474126d9f2373887f85e4601421460
* Intermediate changesrobot-piglet2026-05-131-0/+2
| | | | commit_hash:c0f0e5fa6a2d9bf233fe4af617eb17b323379948
* Intermediate changesrobot-piglet2025-11-031-3/+0
| | | | commit_hash:35957e20f0bc2213a543cff063d4b81f79621304
* Fix grammarakhropov2025-11-021-14/+14
| | | | commit_hash:cc9c4f3b15352d534dd69064a2ba4bbecb7bc117
* TDuration/TInstant named constructors should return staturated value on overflowswarmer2025-10-032-43/+143
| | | | | | `TDuration::Seconds(sec)` now returns `TDuration::Max()` if `sec` is greater than the largest representable value. Previously, a silent wrap-around could produce a significantly shorter interval (even a zero one). commit_hash:552fde08fa3b8201ede23894bb363df2d6bbd5af
* port util to freebsd, againpg2025-07-101-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ``` [pg@arc ~]$ ./util-ut <----- TSaveLoadTest [exec] TSaveLoadTest::TestSaveLoad... [good] TSaveLoadTest::TestSaveLoad [exec] TSaveLoadTest::TestSaveLoadEmptyStruct... [good] TSaveLoadTest::TestSaveLoadEmptyStruct [exec] TSaveLoadTest::TestNewStyle... [good] TSaveLoadTest::TestNewStyle [exec] TSaveLoadTest::TestNewNewStyle... [good] TSaveLoadTest::TestNewNewStyle [exec] TSaveLoadTest::TestList... [good] TSaveLoadTest::TestList [exec] TSaveLoadTest::TestTuple... [good] TSaveLoadTest::TestTuple [exec] TSaveLoadTest::TestVariant... [good] TSaveLoadTest::TestVariant [exec] TSaveLoadTest::TestOptional... [good] TSaveLoadTest::TestOptional [exec] TSaveLoadTest::TestInheritNonVirtualClass... [good] TSaveLoadTest::TestInheritNonVirtualClass [exec] TSaveLoadTest::TestInheritVirtualClass... [good] TSaveLoadTest::TestInheritVirtualClass -----> TSaveLoadTest -> ok: 10 [DONE] ok: 10 [pg@arc ~]$ uname -a FreeBSD arc.freebsd.devtools 14.2-RELEASE-p1 FreeBSD 14.2-RELEASE-p1 GENERIC amd64 [pg@arc ~]$ ``` commit_hash:229d8aa6c8ccce1376d152a833fe8bf7c5faa3bd
* [util] Obtain uptime from the clock_gettime syscallswarmer2025-05-311-7/+4
| | | | | Reading /proc/uptime is about a hundred times slower than accessing the same timer via the clock_gettime call. The latter also has better precision. commit_hash:70904860adc43c9d2d6487a415a2e6b27fe6dae7
* Update Cython to 3.0.10.nik-bes2025-05-191-10/+10
| | | | commit_hash:b43c96b868cd36d636192fd2c6024d9f0d2fb6f8
* [util] getting rid of LUT in DayOfYearToMonthtobo2025-02-271-28/+5
| | | | commit_hash:9ec33d0cbe2da6aeea6e8d02fdaed5f45b6e3534
* Intermediate changesrobot-piglet2025-02-241-48/+69
| | | | commit_hash:ec09e953e6ed7b89ab18dfdac86961de36b5b2ea
* [util] speedup GmTimeR outside LUT intervaltobo2025-02-183-80/+132
| | | | commit_hash:d57be220df393c193619ef5ed129ec4436540629
* Intermediate changesrobot-piglet2025-02-111-1/+3
| | | | commit_hash:f3acde65f4eb25503f414d5262f52b496123bd96
* [util] GmTimeR: use LUT for the tm_yday -> tm_mday conversionswarmer2025-02-111-68/+29
| | | | | Replacing binary search with a look-up table. The performance of which does not depend on the branch predictor, and conversion works equally fast for any dates. commit_hash:fefe9665d0d4b51c2ae09ec2b2816aed30caa57b
* [util] GmTimeR: speedup a bittobo2025-02-101-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | perf before ``` ------------------------------------------------------------------------------- Benchmark Time CPU Iterations ------------------------------------------------------------------------------- BM_GmTimeR 3.61 ns 3.61 ns 194952699 BM_GmTimeRRandom/last_hour 5.04 ns 5.04 ns 136121940 BM_GmTimeRRandom/last_day 5.03 ns 5.03 ns 139883239 BM_GmTimeRRandom/last_month 8.03 ns 8.03 ns 87839823 BM_GmTimeRRandom/last_year 14.9 ns 14.9 ns 46401773 BM_GmTimeRRandom/last_decade 16.9 ns 16.9 ns 41439312 BM_GmTimeRRandom/last_half_centry 16.9 ns 16.9 ns 41225553 ``` perf after ``` ------------------------------------------------------------------------------- Benchmark Time CPU Iterations ------------------------------------------------------------------------------- BM_GmTimeR 3.27 ns 3.27 ns 215390890 BM_GmTimeRRandom/last_hour 4.52 ns 4.52 ns 154869504 BM_GmTimeRRandom/last_day 4.53 ns 4.53 ns 155409964 BM_GmTimeRRandom/last_month 7.24 ns 7.24 ns 96972146 BM_GmTimeRRandom/last_year 13.5 ns 13.5 ns 51957829 BM_GmTimeRRandom/last_decade 15.5 ns 15.5 ns 45192135 BM_GmTimeRRandom/last_half_centry 15.4 ns 15.4 ns 45526906 ``` commit_hash:ac9db56d93a25c3a3018cfbb6bc5800da3d001ee
* GmTimeR x2 speeduptobo2025-02-081-13/+24
| | | | | | | | | | | | | | | | | | | | | | | | | performance comparison againt standard gmtime\_r ``` ------------------------------------------------------------------------------- Benchmark Time CPU Iterations ------------------------------------------------------------------------------- BM_GmTimeR 3.66 ns 3.66 ns 189855900 BM_gmtime_r 18.7 ns 18.7 ns 37340999 BM_GmTimeRRandom/last_hour 5.12 ns 5.12 ns 136126173 BM_gmtime_r_Random/last_hour 19.2 ns 19.2 ns 36556971 BM_GmTimeRRandom/last_day 5.10 ns 5.10 ns 138257644 BM_gmtime_r_Random/last_day 19.2 ns 19.2 ns 37025160 BM_GmTimeRRandom/last_month 7.10 ns 7.10 ns 98235494 BM_gmtime_r_Random/last_month 20.4 ns 20.4 ns 34637975 BM_GmTimeRRandom/last_year 15.0 ns 15.0 ns 46664304 BM_gmtime_r_Random/last_year 26.8 ns 26.8 ns 26135911 BM_GmTimeRRandom/last_decade 17.2 ns 17.2 ns 40105536 BM_gmtime_r_Random/last_decade 27.0 ns 27.0 ns 25817056 BM_GmTimeRRandom/last_half_centry 17.1 ns 17.0 ns 41066079 BM_gmtime_r_Random/last_half_century 26.8 ns 26.7 ns 26215076 ``` commit_hash:33747760ad46412f50fe3cb06f4c438794a44492
* Intermediate changesrobot-piglet2025-02-071-1/+20
| | | | commit_hash:21bc37ea2a290cb645c95fe2c94882484c7001a4
* Part of PR. Stylenae2022024-11-201-32/+62
| | | | | Часть большого ПР REVIEW:7264088 commit_hash:0f5b03fbbed0ac30f734943309e3ef5cd4d7a30e
* FixNamespaceComments in /utildmasloff2024-09-0510-17/+17
| | | | | FixNamespaceComments in /util bb9152570d7c258798644ead5a59f604de05ef3b
* Remove Y_UNIT_TEST from config.clang-formatdmasloff2024-08-301-1/+0
| | | | | Remove Y_UNIT_TEST from config.clang-format 853b6da2c4464342d4cfe7756c18ed599004fdd8
* Set SpacesInLineCommentPrefix to 1 in /utildmasloff2024-08-172-4/+4
| | | | | Set SpacesInLineCommentPrefix to 1 in /util 3853f9ec5143722c1bebd8dc0ffc9b61a6c17657
* fix typotobo2024-06-181-3/+3
| | | | f172ae24ead4a8c8edae837d34f264a744a4d89c
* [util] Better precision of the ProcessUptime on linuxswarmer2024-06-061-3/+9
| | | | | The ProcessUptime function should now usually return a value less than 20 ms if called at the start of the program. 0961a518fdaee4fd243b01c7cf5433dd768897c4
* UTIL: ProcUptime - process uptimeleasid2024-05-284-0/+72
| | | | | Добавляем uptime для процесса 7dc898ce5f81666a4cd5f912f49a3035dc2c599c
* Add mtime/atime/ctime with nanoseconds to TFileStat.sath2024-05-132-8/+36
| | | | 3523ab3f5aade2bdf4c0efd5dd2defbe19f124ff
* Intermediate changesrobot-piglet2024-04-231-3/+3
|
* [[nodiscard]] for static function TDuration::Parseilnurkh2024-04-141-1/+1
| | | | 4475987f399172bada73db028180b5e773e58a30
* Intermediate changesrobot-piglet2024-04-025-10/+0
|
* WebAssembly in utildtorilov2024-03-282-3/+9
| | | | b46c1e446c9d0f9393bf688b26db810f60add0f6
* Intermediate changesrobot-piglet2024-03-225-7/+102
|
* YDB Import 566robot-ydb-importer2024-02-141-0/+126
| | | | 96265cd0cc64e1b9bb31fe97b915ed2a09caf1cb
* Fix sprintf deprecation warnings on newer macOS SDKsomov2024-01-311-2/+2
|
* Fix typos in util/datetime/base.h.ponasenko-rs2023-11-201-2/+2
|
* Fix ISO 8601 parser for dates with year < 160vadim-xd2023-11-092-8/+16
|
* add ymake export to ydbalexv-smirnov2023-06-134-0/+42
|
* Remove using of extra semicolons in utilbulatman2023-05-041-1/+1
|
* Revert ymake build from ydb oss exportalexv-smirnov2023-03-284-42/+0
|
* add library/cpp/actors, ymake build to ydb oss exportalexv-smirnov2023-03-154-0/+42
|
* add windows platform to ydb github exportalexv-smirnov2022-12-201-0/+627
|
* remove kikimr/driver DEPENDSqrort2022-12-021-126/+0
|
* validate canons without yatest_commonqrort2022-11-301-0/+126
|
* speedup GmTimeR functiontobo2022-08-252-34/+166
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | в профиле перфа Маркетного репорта постоянно вижу GmTimeR там в цикле вычитается по количеству дней в году и прибавляется по 1 году с 1970 по 2022 на каждый вызов В Маркете проблема стреляла и раньше в последней итерации функция становится на ~~30% быстрее системной gmtime_r %% ----------- GmTimeR --------------- samples: 20691 iterations: 264304536 iterations hr: 264M run time: 5.002055225 per iteration: 39.85866484 cycles ----------- gmtime_r --------------- samples: 17452 iterations: 188034528 iterations hr: 188M run time: 5.001259884 per iteration: 56.96146577 cycles %% текущая верся почти в 2 раза медленнее системной: %% ----------- GmTimeR --------------- samples: 12760 iterations: 100514931 iterations hr: 101M run time: 5.00096133 per iteration: 105.4334174 cycles ----------- gmtime_r --------------- samples: 17667 iterations: 192697896 iterations hr: 193M run time: 5.001356603 per iteration: 55.69031415 cycles %%
* [util] Add specializations for const / ref qualified member functionssskvor2022-08-241-0/+21
|
* remove unused includetobo2022-07-271-1/+0
|
* add functions without overflowyegorskii2022-07-263-0/+31
|
* fix ya.makemonster2022-07-072-753/+0
|
* remove unused includestobo2022-04-071-3/+0
| | | | ref:f8c119cf3a796a59ab5be4424e5364ba6a201d40
* intermediate changesarcadia-devtools2022-03-152-21/+0
| | | | ref:ca7a95e8c9a9d780f96497136a152091d54e61b5
* Restoring authorship annotation for <[email protected]>. Commit 2 of 2.karavashkin2022-02-101-1/+1
|
* Restoring authorship annotation for <[email protected]>. Commit 1 of 2.karavashkin2022-02-101-1/+1
|
* Restoring authorship annotation for <[email protected]>. Commit 2 of 2.timuratshin2022-02-102-8/+8
|