Здравствуйте, IT, Вы писали:
IT>Вообще-то бысрее-ещё-быстрее — это и есть нефункциональные требования. Ну да ладно.
Ну-ну... Не сталкивался ты с такими задачами...
PD>>Покажи мне хоть одно место, где я предлагал изничтожить, к примеру, C#. Не найдешь.
IT>Трудно найти хоть одно место, где ты вообще говоришь о C#. Похоже кроме C ты и знать ничего не желаешь. В этом проблема, особенно учитывая, что ты преподаватель.
Неужели ? А мне кажется, что хотя бы одно место ты бы смог без труда найти. Именно то место, где ты так успешно читал строку из файла и где я тебе показал, что из этого получится. Там именно о С# речь и идет.
Ну а если этого мало, то учись пользоваться поиском
http://img.meta.ua/rsdnsearch/?q=.NET+Dvorkin&mode=rank&group=N
407 результатов. Не все, конечно, по существу. И уж конечно, не об особеннстях языка. Впрочем , об особенностях языка ты моих сообщений немного и по С++ найдешь — не люблю я эти дискуссии.
PD>>А вот что ты предлагал делать с теми, кто на С++ программирует, я не забыл. Напомнить ?
IT>Изолировать от общества?
Нет, там пожестче было.
>Было дело. В следующий раз специально для тебя буду ставить смайлики, чтобы ты не принимал всё так близко к сердцу.
Не поможет. На определенном уровне никаким смайликом не извинишься.
PD>>Так кто из нас терпимее к чужим мнениям ?
IT>
IT>>>А ты сам-то пробовал писать на чём-то другом кроме C? Или это всё теории?
PD>>C#, Java, Fortran, PL/1, VB,, Asm, ну и кое-что по мелочи.
IT>И как, получалось?
Представь себе, да. Только все время хотелось поскореее закончить (Fortran и PL/1 исключаю, я с ним работал до С)
IT>Архитектуру можно пересмотреть всегда. Вопрос упирается лишь в целесообразность.
Пересмотри архитектуру сложения матриц, я тебе уже несколько раз предложил это сделать
PD>>Многопоточность тут не поможет, я уже объяснил почему, идет пакетная обработка, так что все равно — одну матрицу разбивать или несколько обрабатывать. А вот насчет 16 ядер — не лукавь. Я тебя спросил — как можно оптимизировать. А ты мне в ответ — купи более мощное железо. Почему бы в таком случае не посоветовать — купи 16 компьютеров ?
IT>Купи 16 компьютеров.
И 16 дополнительных лицензий на 3dparty софт на каждый компьютер, при том, что каждая лицензия в несколько раз дороже компьютера.. Замечательные советы ты даешь. Успехов в их применении!
PD>>Мой вариант был тогда еще приведен, и в нем ничего не меняется. А вот в твоем время замерь. Без LinQ ты проиграл в 33 раза
IT>Меня это не волнует. Где надо я выиграю, а где не надо у меня приоритеты совсем другие.
Тебя не волнует — твое дело, а других — тоже ? Зачем же ты такой совет даешь другим —
а вдруг их это волнует ?
IT>Это решение и для файлов побольше работает не плохо. Но самое забавное, что похожие реальные решения, а не высосанные из пальца, и на больших файлах работают приемлемо. В жизни мне вот никогда не надо было читать последнюю строчку из файла.
Так не моя же задача. Ее кто-то там предложил, значит, ему и нужно. А ты свой совет дал.
>А весь файл раскладывать на строки приходится периодически.
Ну я же тебе показал, что твое приемлемое решение в 33 раза медленнеее возможного. Но тебе это все равно. Вот в итоге все и работает в N раз медленнее, чем могло бы.
Ну а если говорить о разложении файла на строчки — зачем ? Он и так разложен, своей структурой. Остается только отмэппить его в память, сделать массив указателей на строчки, и все. Ни один байт исходного текста ни копировать, ни двигать не надо. Вообще не надо. Ничего.