Поиск и замена строк в файле

Krosheninnikov Artem feeblehamster на mail.ru
Пт Янв 31 22:48:15 UTC 2014


Сходу нужного не нашел, но безотносительно того, какой вариант будет 
выбран, ссылка крайне полезная, спасибо!

А измерение производительности - HPL выплевывает результат в файл, 
который выглядит примерно так:

        ||Ax-b||_oo/(eps*(||A||_oo*||x||_oo+||b||_oo)*N)= 0.0064147
        ...... PASSED
        ================================================================================
        T/V                N    NB     P     Q Time                 Gflops
        --------------------------------------------------------------------------------
        WR00R2L2         300     3     2     2 0.01              2.807e+00
        HPL_pdgesv() start time Thu Jan 30 13:35:03 2014

        HPL_pdgesv() end time   Thu Jan 30 13:35:03 2014

И таких результатов при одном запуске получается много. Соответственно, 
надо после каждого запуска парсить файл и находить самое большое 
значение гигафлопс. А потом для самого большого значения запоминать 
параметры.

Вообще, я тоже склоняюсь к С++ :)

01.02.2014 01:26, Vyacheslav Karamov пишет:
> 1) Можно поискать здесь http://mywiki.wooledge.org/BashFAQ уже готовое 
> решение, как такой файл прочитать и проанализировать.
> Кажется там я видел коллекцию готовых модулей, брал скрипт который 
> парсил INI-файл виндовый. Работало :)
>
> 2) Простая программа на С++ или С легко сделает тоже самое.
>
> Вопрос тут в том, есть ли необходимость как-то автоматизировать 
> измерение производительности?
>
> 31.01.2014 22:48, Krosheninnikov Artem пишет:
>> Добрый вечер,
>>
>> представьте, что вам нужно погонять HPL (в народе - Linpack) с 
>> разными параметрами на своей системе\кластере\ещё чем-нибудь. HPL 
>> хранит конфиг в файле HPL.dat, который по сути представляет текстовый 
>> файл вида:
>> *290 300 340 350  Ns
>> 4            # of NBs
>> 1 2 3 4      NBs
>> 0            PMAP process mapping (0=Row-,1=Column-major)
>>
>> *первая строка - размерность матриц для теста, вторая - на сколько 
>> частей разбивается матрица, третья  -  размеры каждого блока, и.т.д.
>>
>> Чтобы получить максимальную производительность, нужно подобрать 
>> оптимальные параметры. Тут есть два варианта:
>>
>> а) обладать колоссальными фундаментальными знаниями и опытом и с ходу 
>> сказать, что, например, на кластере с сотней ядер и парой сотен гб 
>> оперативной памяти логичнее использовать это и вон то.
>>
>> б) методом проб и ошибок подбирать параметры, смотреть результаты, 
>> делать выводы и подбирать параметры дальше.
>>
>> Поскольку первый вариант невозможен ввиду отсутствия колоссальных 
>> знаний и опыта, нужно сидеть и изменять параметры. Вручную это делать 
>> неинтересно. Тут снова два варианта:
>>
>> а) быстренько написать программу
>> б) делать это в консоли
>>
>> Осознавая свою слабость в написании скриптов, интересует второй 
>> вариант. Куда стоит посмотреть\почитать?
>>
>>
>
>
>

----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <https://lists.ubuntu.com/archives/ubuntu-ru/attachments/20140201/53ba6243/attachment.html>


More information about the ubuntu-ru mailing list