Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Частота проца(P4) [D6, Win2k]


dronas555 ©   (2002-11-07 17:53:00) 

Как изменить частоту проца(P4).Если знаете, помогите.


han_malign   (2002-11-18 13:18:00) [1]

Вообще не на всех матиранках можно оверлочить Intel-овские камни, так как у них есть ножка автозадания частоты шины, которую оверлокеры закрашивают. Опять таки какую частоту - шины, множитель?


icWasya   (2002-11-18 13:01:00) [2]

// Не смешно :(. Без ?той штуки
// Компайлер выдает Internal error C1079

(D5)
вот так будет короче

function TForm1.GetCPUClick:int64;assembler;
asm
db 0fh,31h // Опкод для команды rdtsc
end;


mukha   (2002-11-16 22:31:00) [3]

Не моё; из форума.
Скорость работы процессора:
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ExtCtrls, StdCtrls;

type
TForm1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Button1: TButton;
Button2: TButton;
Timer1: TTimer;
procedure Timer1Timer(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
Counter:integer; //Счетчик срабатывания таймера
Start:int64; //Начало роботы
Previous:int64; //Предыдущее значение
PStart,PStop:int64; //Для примера выч. времени
CurRate:integer; //Текущая частота проца
function GetCPUClick:int64;
function GetTime(Start,Stop:int64):double;
end;

var
Form1: TForm1;

implementation

{$R *.DFM}




{Скорость работы процессора, точный таймер (19.07.00)
Данная тема уже обсуждалась, но у меня есть своя реализация сабжа. Начиная с Pentium MMX, Intel ввели в процессор счетчик тактов на 64 бита (Присутствуэт точно и в К6). Для того чтобы посотреть на его содержание, была введена команда "rdtsc" (подробное описание в интеловской мануале). Эту возможность можно использовать для реализации сабжа.
Посоку Делфя не вкурсе насчет rdtsc, то пришлось юзать опкод (0F31).
Привожу простенький примерчик юзания, Вы уж извините - немножко кривоват получился, да и ошибка компалера какая-то вылезла :( (V4 Bld5.104 Upd 2). Кому интересно, поделитесь своими соображениями по этому поводу. Особенно интерисует работа в режиме когда меняется частота процессора (Duty Cycle, StandBy).

Проверялось под еНТями на Пне 2 333. }



function TForm1.GetCPUClick:int64;
begin
asm
db 0fh,31h // Опкод для команды rdtsc
mov dword ptr result,eax
mov dword ptr result[4],edx
end;
// Не смешно :(. Без ?той штуки
// Компайлер выдает Internal error C1079
Result:=Result;
end;

// Время в секундах между старт и стоп
function TForm1.GetTime(Start,Stop:int64):double;
begin
try
result:=(Stop-Start)/CurRate
except
result:=0;
end;
end;



procedure TForm1.Timer1Timer(Sender: TObject);

var
i:int64;
begin
i:=GetCPUClick;
if Counter=0
then Start:=i
else begin
Label2.Caption:=Format("Частота общая:%2f",[(i-Start)/(Counter*Timer1.Interval*1000)]);
Label3.Caption:=Format("Частота текущая:%2f",[(i-Previous)/(Timer1.Interval*1000)]);
CurRate:=Round(((i-Previous)*1000)/(Timer1.Interval));
end;
Label1.Caption:="Такты: "+IntToStr(i);
Previous:=i;
Inc(Counter);
end;

procedure TForm1.FormActivate(Sender: TObject);
begin
Counter:=0;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
PStart:=GetCPUClick;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin

PStop:=GetCPUClick;
Label4.Caption:=Format("Время между нажатиями:%gсек",[GetTime(PStart,PStop)])
end;

end.


Jeer   (2002-11-14 12:05:00) [4]

Напильником:))


_landy   (2002-11-14 11:17:00) [5]

Ищи прогу SoftFCB - она на некоторых чипсетах могла на ходу изменять частоту системной шины.


sancho   (2002-11-07 21:09:00) [6]


> Как изменить частоту проца(P4).Если знаете, помогите.

Из делфи никак...
На материнке есть перемычки как их поставишь, так и будет работать. Это называется разгон процессора.
PS Почитай инструкцию к материнке, в инете про разгон поищи...


ZZ   (2002-11-07 18:50:00) [7]

берешь проц, продаешь его... в зависимости от того, увеличить или уменьшить частоту проца - добавляешь или убираешь в карман н-ое кол-во американских рублей, покупаешь новый проц.


Наверх

Титульная страница Поиск, карта сайта Написать письмо