Nadal grep prowadzi peleton. Trzecia próba z wykorzystaniem również funkcji systemowej, tym razem szukam jednego znaku i dopiero w kolejnych krokach przeprowadzam dalsze porównania. Warto nadmienić, że grep również korzysta z funkcji systemowych, zarówno do operacji wyszukiwania, jak i interpretacji wyrażeń regularnych.
Ponownie trochę lepszy wynik, ale nadal grep jest niedościgniony. Optymalizować powyższe programy, pisać grep'a od nowa? Czy może zrobić coś ciekawszego? Może użyć więcej niż jeden rdzeń procesora? Do dalszych testów użyję najlepiej rokującej funkcji szukającej z trzeciego programu {memchr()}. Program będzie jednak wieloprocesorowy - będą uruchomione osobne procesy, nie wątki! Sam program bedzie składać się z dwóch części: główny program uruchamiający procesy (napisany w C++), który wywołuje kod szukający (napisany w C).
Programy będę uruchamiać z ustawionym uruchomieniem 1 procesu, a następnie 32 procesów. Przed uruchomieniem programy były kompilowane. Pliki wyjściowe z wynikami szukania kasuję (i synchronizuję bufory dyskowe), by nie wpływały na czas działania programu. Poprawność wykonania programu sprawdzam zliczając linie kodu wynikowego (wc -l).
***
Inne wpisy:
Oświetlenie miejsca pracy
Oświetlenie LED łazienki (małej)
Zużycie prądu przez suszarkę do ubrań i pralkę
Zużycie prądu przez urządzenia domowe i ich współczynnik mocy cos phi (cosφ)
Modernizacja oświetlenia głównego w dużym pokoju i przedpokoju
Oświetlenie LED łazienki (małej)
Zużycie prądu przez suszarkę do ubrań i pralkę
Zużycie prądu przez urządzenia domowe i ich współczynnik mocy cos phi (cosφ)
Modernizacja oświetlenia głównego w dużym pokoju i przedpokoju
Update: 2018.07.17
Create: 2018.07.17
Brak komentarzy:
Prześlij komentarz