столько писем в треде и ни одного нормального PoC тест-кейза, где показывается как оно тормозит 5 сек, без всяких cpan модулей и с ip адресами нагенерированными в этом же кейзе.
25 ноября 2016 г., 21:09 пользователь Naim Shafiev via Moscow-pm <[email protected]> написал: > да только на версии с grep, но там в modern perl telegram чате петрусевич > побольше чем я занялся ускорение . > вот результаты > Anton Petrusevich: > грубо говоря так: когда while( $ipn < $ipn->broadcast ), то вайл занимает > 2.2сек; когда my $bc = $ipn->broadcast; while ($ipn < $bc) {, то 1.3сек; > когда без модуля, чисто use Socket/inet_ntoa/inet_aton, то ... 0.293ms > > > On Nov 25, 2016 9:17 PM, "Denis Evdokimov via Moscow-pm" <[email protected]> > wrote: >> >> Данных катастрофически не хватает. >> Судя по первому письму профайлер запускался, но только на версии с grep. >> >> Предположу, что map-версия выглядит примерно так: >> foreach my $iponly (@bla_bla_bla) >> { >> my %ips = map { $_ => 1 } @ips; >> if (not exists($ips{$iponly} )) >> { >> return $iponly; >> } >> } >> >> >> тогда её нужно переписать так: >> my %ips = map { $_ => 1 } @ips; >> foreach my $iponly (@bla_bla_bla) >> { >> if (not exists($ips{$iponly} )) >> { >> return $iponly; >> } >> } >> >> >> -- >> Moscow.pm mailing list >> [email protected] | http://moscow.pm.org >> > > -- > Moscow.pm mailing list > [email protected] | http://moscow.pm.org > -- Moscow.pm mailing list [email protected] | http://moscow.pm.org
