IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

> Как ускорить выполнение программы?
SAB
сообщение 10.10.2003 10:50
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 23

Репутация: -  0  +


В программе есть цикл, обрабатывающий данные из файла:
Код
repeat
 Read(f_in,d);
 SinCos(j*2*pi*k/N,s1,c1);
 A1:=d.Zn*c1;
 SA:=SA+A1;
 B1:=d.Zn*s1;
 SB:=SB+B1;
 k:=k+1;
until k>N-1;

В файле более 50000 значений. Такой цикл выполняется несколько томительных секунд. Может кто знает: как ускорить его выполнение?

Сообщение отредактировано: volvo - 5.01.2005 14:03


--------------------
Человек должен думать, а компьютер работать.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
Nightmare
сообщение 10.10.2003 13:24
Сообщение #2


Новичок
*

Группа: Пользователи
Сообщений: 48
Пол: Мужской

Репутация: -  1  +


Информации, конечно менее, чем необходимо, но попробуем разобраться.
1.
Код
A1:=d.Zn*c1;
SA:=SA+A1;

заменить на
Код
SA := SA + d.Zn*c1;


2.
Код
k:=k+1;

заменить на
Код
Inc(k);

Это так, навскидку.
Далее: здесь самая медленная операция - чтение из типизованного файла одного значения, очевидно типа Record. Если есть возможность, нужно убрать это из цикла.
Обычно, если идет неоднократное обращение к данным, разделяют загрузку и обработку, но мне почему-то кажется, что здесь это неприменимо. А посему придётся или смириться или давать больше информации.

Сообщение отредактировано: volvo - 5.01.2005 14:04
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
SAB   Как ускорить выполнение программы?   10.10.2003 10:50
Nightmare   Re: Как ускорить выполнение программы?   10.10.2003 13:24
SAB   Re: Как ускорить выполнение программы?   11.10.2003 6:07
___ALex___   Re: Как ускорить выполнение программы?   11.10.2003 8:16
Nightmare   Re: Как ускорить выполнение программы?   11.10.2003 10:14
zx1024   Re: Как ускорить выполнение программы?   11.10.2003 10:20
___ALex___   Re: Как ускорить выполнение программы?   11.10.2003 20:48
zx1024   Re: Как ускорить выполнение программы?   12.10.2003 19:40
___ALex___   Re: Как ускорить выполнение программы?   12.10.2003 20:49
SAB   Re: Как ускорить выполнение программы?   13.10.2003 8:11
zx1024   Re: Как ускорить выполнение программы?   13.10.2003 8:34
trminator   Re: Как ускорить выполнение программы?   13.10.2003 15:10
mj   Re: Как ускорить выполнение программы?   15.10.2003 13:27
Vit   Re: Как ускорить выполнение программы?   17.10.2003 17:27
SAB   Re: Как ускорить выполнение программы?   18.10.2003 5:38
Vit   Re: Как ускорить выполнение программы?   20.10.2003 19:58
SAB   Re: Как ускорить выполнение программы?   30.10.2003 11:40


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 11.07.2025 8:04
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"