2010/8/22:本掲示板は閲覧専用です。データが一部破損しておりますがご了承ください。
  新規投稿 ┃ツリー表示 ┃スレッド表示 ┃一覧表示 ┃トピック表示 ┃番号順表示 ┃検索 ┃設定 ┃ホーム  
229 / 376 ツリー ←次へ | 前へ→

【578】Athlon XP-MにおけるCrystalCPUIDの倍率機能につい... Fab51/ita 04/1/23(金) 16:47

【664】Re:電圧一段ずつ変更版 tsukasam 04/2/16(月) 22:53
【666】Re:電圧一段ずつ変更版 ひよひよ 04/2/16(月) 23:15
【667】Re:電圧一段ずつ変更版 けんじ 04/2/16(月) 23:15
【668】改造版をごにょごにょしてみる。 tsukasam 04/2/17(火) 19:59
【669】ごにょごにょはオープンソースの醍醐味 ひよひよ 04/2/17(火) 21:48
【671】Re:ごにょごにょはオープンソースの醍醐味 tsukasam 04/2/18(水) 20:14
【674】更新漏れ ひよひよ 04/2/19(木) 0:49
【675】更新完了 149 相当?? ひよひよ 04/2/19(木) 1:36
【685】コンパイルできたー。リンカもとおったー。 tsukasam 04/2/21(土) 11:29
【687】おめでとうございます ひよひよ 04/2/21(土) 11:37
【688】Re:お見事! ita 04/2/21(土) 15:49

【664】Re:電圧一段ずつ変更版
←back ↑menu ↑top forward→
 tsukasam  - 04/2/16(月) 22:53 -

引用なし
パスワード
   ▼ひよひよさん:
>早速修正しておきました。

お世話になっております。tsukasamです。

3.2.3.148Beta 問題ありません。
これで最速/最小消費電力の変更が、それぞれのショートカット1発でできるようになりました。
ありがとうございました。

----
以下"ひとりごと"です。
今、Alex Simonov氏の改造版のソースをながめていますが、考えてみるとCPU負荷に応じて倍率変更するためにはプログラムは常駐しなきゃならんわけで、するとサイズが問題になるかなと。
負荷検出と倍率変更だけをドライバー化する必要があるのかな? うひゃーたいへんだぁとか勝手に妄想しています。

【666】Re:電圧一段ずつ変更版
←back ↑menu ↑top forward→
 ひよひよ  - 04/2/16(月) 23:15 -

引用なし
パスワード
   ▼tsukasamさん:
>3.2.3.148Beta 問題ありません。
>これで最速/最小消費電力の変更が、それぞれのショートカット1発でできるようになりました。
動作報告ありがとうございます。明日にでも正式版として再リリースしておきます。

>以下"ひとりごと"です。
>今、Alex Simonov氏の改造版のソースをながめていますが、考えてみるとCPU負荷に応じて倍率変更するためにはプログラムは常駐しなきゃならんわけで、するとサイズが問題になるかなと。
当然常駐することになりますが、メモリ的(8MB程度) CPU 的(50/100msごとにタイマー0呼び出し+CPU負荷の測定)にもたいしたことないんじゃないかと思います。

>負荷検出と倍率変更だけをドライバー化する必要があるのかな? うひゃーたいへんだぁとか勝手に妄想しています。
細部(設定ダイアログとかタスクトレイへの格納等)にこだわらなければ実装は極めて簡単です。タイマーをセットし、タイマープロシージャ内で CPU の負荷率の測定+もし負荷が大きい(小さい)条件を満たしていれば、倍率&電圧の変更機能の呼び出しと。

細部を整備するのが大変なんですよね。この手の機能は...

【667】Re:電圧一段ずつ変更版
←back ↑menu ↑top forward→
 けんじ  - 04/2/16(月) 23:15 -

引用なし
パスワード
   ▼tsukasamさん:
▼ひよひよさん:

こんにちは。
遅くなりましたが、倍率自動変更機能試してみました。

結果ですが、かなりいい感じで動きました。
普段低速で動いていても、アプリの起動とかで
ぱっと早くなって、起動後元に戻ってくれてます。

> 考えてみるとCPU負荷に応じて倍率変更するためにはプログラムは
> 常駐しなきゃならんわけで、するとサイズが問題になるかなと。
確かに、常駐ソフトだとサイズとかも気にすべきなのでしょうが、
まずは使えることかなと個人的には思います。今時のメモリ
たっぷり搭載のマシンにあっては、CPU負荷監視ぐらいのソフトは
気にならんかと思います。

にしても、SoftVID対応の改造。早くやりたいーってところです。

でわ。

【668】改造版をごにょごにょしてみる。
←back ↑menu ↑top forward→
 tsukasam  - 04/2/17(火) 19:59 -

引用なし
パスワード
   ひよひよさん、けんじさん:
tsukasamです。お二方のレス同時刻ですね。ありがとうございます。

ツリーを乗っ取ってしまいごめんなさい。>けんじさん。

ここで改造版の話題を続けてもいいですか? 他に良い場所があれば誘導してください。>ひよひよさん

----
お許しを貰うまでは”ひとりごと”...

Alex氏追加部の動作内容と改造M/Bで落ちる理由をなんとなく把握。

追加部の動作内容:
1.CrystalCPUIDの通常状態に加え、スレッドな関数(ScaleCPUSpeed())のCPU負荷監視ループが定期的に作動するOnDemand状態がある。
2.ScaleCPUSpeed()は、開始する際、現状の倍率/電圧を取得し、CrystalCPUID.iniに定義された倍率/電圧テーブルから一致するペアを探して初期値としている。また停止する際、開始前の倍率/電圧にいきなり戻す。
3.Normal/Min Power/Max Speed の各状態は、通常状態の下にあり、ScaleCPUSpeed()は停止している。

落ちる理由:
倍率/電圧ペアテーブルを段階的に変更するところ以外に、いきなり変更するところがいくつかある。

今はまず当方にできることを考えていきます。
ソースを切った貼ったな修正が限界の当方ですが、仕様を限定すれば何とかなりそうです。

【669】ごにょごにょはオープンソースの醍醐味
←back ↑menu ↑top forward→
 ひよひよ  - 04/2/17(火) 21:48 -

引用なし
パスワード
   ▼tsukasamさん:
>ここで改造版の話題を続けてもいいですか? 他に良い場所があれば誘導してください。>ひよひよさん
新ツリー立てておきます。

>落ちる理由:
>倍率/電圧ペアテーブルを段階的に変更するところ以外に、いきなり変更するところがいくつかある。
SysInfo.dll Release 148 のソースを取ってきて、CpuInfo.cpp 内の
int    CCpuInfo::SetData( DWORD ID , DWORD data )
関数の
    case LH_SET_VID:
部分を最新のものに置き換えれば SysInfo.dll 内部で段階的に変更できるようになるので、CrystalCPUID の変更をすることなくこの問題に対応できます。もしくは、呼び出し部分をちょっと改造して SysInfo.dll の最新版を使えるようにするというのもありかと
思います。

【671】Re:ごにょごにょはオープンソースの醍醐味
←back ↑menu ↑top forward→
 tsukasam  - 04/2/18(水) 20:14 -

引用なし
パスワード
   tsukasamです。あちらのツリーはまだ畏れおおいので、も少しここで。

▼ひよひよさん:
>SysInfo.dll Release 148 のソースを取ってきて、CpuInfo.cpp 内の
>int    CCpuInfo::SetData( DWORD ID , DWORD data )
>関数の
>    case LH_SET_VID:
>部分を最新のものに置き換えれば SysInfo.dll 内部で段階的に変更できるようになるので、
良い手段(ある意味裏技ですね)をご教示いただきありがとうございます。

しかし、当方には最新版の該当個所を見つけることができませんでした。
現在ダウンロード可能な CristalCPUID 3.2.3.148 Source Code を頂きました。
これに含まれるCpuInfoフォルダのCpuInfo.cppの該当関数の該当スイッチを見てみたのですが、どうも複数段の電圧変更には対応していない?気がします。
CpuInfo.cppのタイムスタンプが02/12なので、当方がなにか見当違いなところを見ているのかもしれませんが、ひょっとするとソースファイルが未更新なのではないかと考えたのでお知らせします。まちがってたらごめんなさい。

【674】更新漏れ
←back ↑menu ↑top forward→
 ひよひよ  - 04/2/19(木) 0:49 -

引用なし
パスワード
   >CpuInfo.cppのタイムスタンプが02/12なので、当方がなにか見当違いなところを見ているのかもしれませんが、ひょっとするとソースファイルが未更新なのではないかと考えたのでお知らせします。まちがってたらごめんなさい。
タイムスタンプ的に更新漏れな気がします。明日更新しておきます。お手数おかけしてごめんなさい。とはいえ、148 のソースは手元にないので 149 ということになりそうです...

【675】更新完了 149 相当??
←back ↑menu ↑top forward→
 ひよひよ  - 04/2/19(木) 1:36 -

引用なし
パスワード
   149 の作りかけ版に置き換えておきました。そちらを参照してください。
これで、段階的に電圧が変更できるようになります。

以下参考コード(インデントがあってません)

{
if( data == 15 || data == 31 ){
break;
}
DWORD count = 32;
while( count-- ){
DWORD CurrentVID = 0;
DWORD NextVID = 0;

ReadMSR(0xC0010042,&EAX,&EDX);
CurrentVID = EDX & 0x1F;
if(data > CurrentVID){
    NextVID = CurrentVID + 1;
    if( NextVID == 15 ){
        NextVID++;
    }
}else if(data < CurrentVID){
    NextVID = CurrentVID - 1;
    if( NextVID == 15 ){
        NextVID--;
    }
}else{
    break;
}

if( NextVID == 31 || NextVID < 0 || NextVID > 31 ){
    break;
}

ReadMSR(0xC0010041,&EAX,&EDX);
EAX &= 0xFFFFE0FF;
EAX |= 0x00020000; // Set bit 17  (VID)
EAX &= 0xFFFEFFFF; // Clear bit 16 (FID)
EDX = 0x64;    // Allow minimum 100 ms settling time
EAX |= ( NextVID << 8 );
WriteMSR(0xC0010041,&EAX,&EDX);
do{
    ReadMSR(0xC0010042,&EAX,&EDX);
}while( (EAX >> 31) & 0x1 );
}

【685】コンパイルできたー。リンカもとおったー。
←back ↑menu ↑top forward→
 tsukasam  - 04/2/21(土) 11:29 -

引用なし
パスワード
   環境構築に手間取ってましたが、やっとできましたー。
Max Speed や Min Powerへの移行も問題ありません。もうブラックアウトすることもありません。
FSB133MHz 1.25V/6.0x 〜 1.60V/12.0x をくるくる変化しています。たのしーうれしー。

SOFTVID制御な改造に着手して、タイミングよく改造版に出会えて良かったぁ。
すべてCrystalCPUIDのおかげです。Ver.3.3もとーっても楽しみです。※要望は向こうに書きます。(^^;)
ひよひよさん、いろいろありがとうございました。

【687】おめでとうございます
←back ↑menu ↑top forward→
 ひよひよ  - 04/2/21(土) 11:37 -

引用なし
パスワード
   ▼tsukasamさん:
>環境構築に手間取ってましたが、やっとできましたー。
>Max Speed や Min Powerへの移行も問題ありません。もうブラックアウトすることもありません。
>FSB133MHz 1.25V/6.0x 〜 1.60V/12.0x をくるくる変化しています。たのしーうれしー。
ホント楽しいんですよ。自分でビルドすると!! とりあえず、オープンソースに
感謝する方向でよろしくお願いします。

>SOFTVID制御な改造に着手して、タイミングよく改造版に出会えて良かったぁ。
>すべてCrystalCPUIDのおかげです。Ver.3.3もとーっても楽しみです。※要望は向こうに書きます。(^^;)
>ひよひよさん、いろいろありがとうございました。
こちらも今日、明日で対応版が出せそうな感じです。
いきなり完璧なものとはならないと思うので色々ご意見をお寄せくださると助かります。特に、ソースを参照しつつ問題点を修正というプロセスはオープンソースなら
ではだと思いますしね。

今は先日発表になった IA-32e の対応コードを書いているところだったりしますが...

【688】Re:お見事!
←back ↑menu ↑top forward→
 ita  - 04/2/21(土) 15:49 -

引用なし
パスワード
   >FSB133MHz 1.25V/6.0x 〜 1.60V/12.0x をくるくる変化しています。たのしーうれしー。
期待して拝見していましたが、ついに成功ですね、すばらしい、
なかなかSVIDの改造までやれる方は少ないでしょうが、実用になりそうな感じですね。

229 / 376 ツリー ←次へ | 前へ→
  新規投稿 ┃ツリー表示 ┃スレッド表示 ┃一覧表示 ┃トピック表示 ┃番号順表示 ┃検索 ┃設定 ┃ホーム  
ページ:  ┃  記事番号:   
51982
(SS)C-BOARD v3.8(とほほ改ver2.1) is Free