![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Перевод функций на asm для ускорения работы [D7, Win2k, WinXP]
Wolf © (2008-01-05 17:52:00)Приветствую.
Пишу приложение функцией которого являеться сканирование всех файлов на диске и вывод информации о файлах. включая размер файла.
Использую стандартные функции поиска и определения размера.
Возникла идея ускорить работу путем написания функций на asm.
Сам я асемблер знаю плохо.
Может быть вы сможете помочь перевести функцию определение размера файла а asm ?
Что то наподобие чтобы получилось
function FileSize(FileName:string):integer; // возвращает размер файла в байтах
begin
asm
// Код на asm
end;
end;
Пока это самое основное. Еще бы кто нибудь подсказал как реализовать поиск файлов на asm и было бы вообще замечательно :)
Германн (2008-01-06 04:47:00) [21]
> Wolf © (05.01.08 17:52)
> Еще бы кто нибудь подсказал как реализовать поиск файлов
> на asm и было бы вообще замечательно :)
>
Забудь. То бишь плюнь на всё это!!!
Юрий Зотов (2008-01-06 03:58:00) [22]Есть легкое подозрение, что 90% времени в этой программе занимают дисковые операции - и никуда от этого не денешься.
Оставшиеся 10% занимает собственно исполнение кода. И даже если это время оптимизировать до полного нуля, то суммарный выигрыш все равно не превысит 10%.
DVM (2008-01-06 00:33:00) [23]Ловля блох.
sniknik (2008-01-05 23:26:00) [24]> Быстрее нельзя.
?, ты же не знаеш КАК он там у себя написал. %)
но раз потребовалось "ускорение" то подозреваю, что можно быстрее... но не за счет переписывания вызовов api на asm-е конечно.
tesseract (2008-01-05 20:49:00) [25]
> Пишу приложение функцией которого являеться сканирование
> всех файлов на диске и вывод информации о файлах. включая
> размер файла.
На Асм только гемор получишь. Быстрее нельзя. Маскимум что можно оптимизировать - вызовы сетевых функций, получишь минус посредника при операциях.
sniknik (2008-01-05 18:09:00) [26]> ... :integer; // возвращает размер файла в байтах
размер файлов не более 2 гиг?
типа "закладка" на дальнейшее, будет чего исправлять при сопровождении.
совет хочеш? не парь мозги с таким "ускорением", основное ускорение в алгоритмах, в продуманной работе программы, а не в операциях над байтами...
вот когда все остальные средства исчерпаны, а необходимо еще, хоть на пару процентов... вот тогда да.
большого прироста производительности "корпление над байтами" не дает, чаще наоборот дает дополнительные тормоза...
@!!ex (2008-01-05 17:59:00) [27]> [0] Wolf © (05.01.08 17:52)
Это глупо. Т.К, определение размера штука виндовая, и состоит лишь в вызове функции API. Соответственно что на Асме, что на дельфе, один и тот же код получится.