Со строкой шустрее

     panda:  1 wallclock secs ( 1.08 usr +  0.00 sys =  1.08 CPU) @
796443.52/s (n=860159)

panda=>sub{my$dt=Panda::Date->new("2013-06-27 18:44:59")}


при условии, что дата в исо формате. У меня дата на входе в dd.mm.yyyy. А
так, спасибо за наводку.


27 октября 2013 г., 0:05 пользователь [email protected]
<[email protected]>написал:

> Корми ей строку сразу. Не разбирай на части. Или тебе там что-то странное
> надо?
>
>
> Воскресенье, 27 октября 2013, 0:01 +04:00 от Андрей П. Ковбович<
> [email protected]>:
>
>   Panda быстрее Time::Piece, но все равно не вписывается в 1000ns
>
>      panda:  1 wallclock secs ( 1.06 usr +  0.00 sys =  1.06 CPU) @
> 202867.92/s (n=215040)
>
> my$d="27.06.2013";
> my$t="18:44:59";
> my$r=qr/^(\d\d)\.(\d\d)\.(\d\d\d\d) (\d\d)\:(\d\d):(\d\d)$/;
> ...
> panda=>sub{ "$d $t"=~/$r/; my$dt=Panda::Date->new([$3,$2,$1,$4,$5,$6]) }
>
>
>
> 26 октября 2013 г., 23:51 пользователь 
> [email protected]<https://e.mail.ru/sentmsg?mailto=mailto%[email protected]>
> <[email protected]<https://e.mail.ru/sentmsg?mailto=mailto%[email protected]>
> > написал:
>
>> Попробуй Panda::Date...
>>
>>
>>
>> Суббота, 26 октября 2013, 23:48 +04:00 от Akzhan Abdulin <
>> [email protected]<https://e.mail.ru/sentmsg?mailto=mailto%[email protected]>
>> >:
>>
>>   :)
>>
>>
>> 26 октября 2013 г., 23:43 пользователь Андрей П. Ковбович <
>> [email protected]<https://e.mail.ru/sentmsg?mailto=mailto%[email protected]>
>> > написал:
>>
>>> Все, нашел: $dt1 [gt/lt/eq] $dt2
>>>
>>> Benchmark: running Class::Date, Date::Manip, DateTime, Time::Piece, lex
>>> for at least 1 CPU seconds...
>>> Class::Date:  1 wallclock secs ( 1.00 usr +  0.12 sys =  1.12 CPU) @
>>> 12799.11/s (n=14335)
>>> Date::Manip:  2 wallclock secs ( 1.05 usr +  0.00 sys =  1.05 CPU) @
>>> 400.00/s (n=420)
>>>   DateTime:  1 wallclock secs ( 1.07 usr +  0.00 sys =  1.07 CPU) @
>>> 10047.66/s (n=10751)
>>> Time::Piece:  1 wallclock secs ( 1.04 usr +  0.00 sys =  1.04 CPU) @
>>> 165414.42/s (n=172031)
>>>        lex:  0 wallclock secs ( 1.07 usr +  0.00 sys =  1.07 CPU) @
>>> 3215550.47/s (n=3440639)
>>>
>>>
>>> 26 октября 2013 г., 23:33 пользователь Андрей П. Ковбович <
>>> [email protected]<https://e.mail.ru/sentmsg?mailto=mailto%[email protected]>
>>> > написал:
>>>
>>> Какой модуль или способ сейчас считается самым быстрым, чтобы сравнить
>>>> две даты формата YYYY-mm-dd HH:MM::SS? Как уложиться в 1 микросекунду?
>>>>
>>>> Benchmark: running Class::Date, Date::Manip, DateTime, Time::Piece for
>>>> at least 1 CPU seconds...
>>>> Class::Date:  0 wallclock secs ( 0.89 usr +  0.13 sys =  1.02 CPU) @
>>>> 13175.49/s (n=13439)
>>>> Date::Manip:  1 wallclock secs ( 1.09 usr +  0.01 sys =  1.10 CPU) @
>>>> 407.27/s (n=448)
>>>>   DateTime:  1 wallclock secs ( 1.03 usr +  0.00 sys =  1.03 CPU) @
>>>> 10437.86/s (n=10751)
>>>> Time::Piece:  1 wallclock secs ( 1.01 usr +  0.00 sys =  1.01 CPU) @
>>>> 179293.07/s (n=181086)
>>>>
>>>
>>>
>>> --
>>> Moscow.pm mailing list
>>> [email protected]<https://e.mail.ru/sentmsg?mailto=mailto%3amoscow%[email protected]>|
>>> http://moscow.pm.org
>>>
>>>
>>  --
>> Moscow.pm mailing list
>> [email protected]<https://e.mail.ru/sentmsg?compose&To=moscow%[email protected]>|
>> http://moscow.pm.org
>>
>>
>>
>> --
>> Nick unnoun
>>
>> --
>> Moscow.pm mailing list
>> [email protected]<https://e.mail.ru/sentmsg?mailto=mailto%3amoscow%[email protected]>|
>> http://moscow.pm.org
>>
>>
>  --
> Moscow.pm mailing list
> [email protected] <https://e.mail.ru/sentmsg?compose&To=moscow%[email protected]>|
> http://moscow.pm.org
>
>
>
> --
> Nick unnoun
>
> --
> Moscow.pm mailing list
> [email protected] | http://moscow.pm.org
>
>
-- 
Moscow.pm mailing list
[email protected] | http://moscow.pm.org

Ответить