コグノスケ


link 未来から過去へ表示(*)  link 過去から未来へ表示

link もっと前
2019年4月13日 >>> 2019年3月31日
link もっと後

2019年4月13日

レジスタダンプ、書き換えツールmemaccess - ちょっと修正

先日(2019年3月24日の日記参照)作ったmemaccess(GitHubへのリンク)細かい部分が色々バグっていたので直しました。

  • 32bit環境でビルドできない
  • ビルド時にlibtoolを要求する(本来は要らない)
  • 0x80000000_00000000以上のアドレスを指定すると0x7fffffff_ffffffffになってしまう
  • 32bitを超える値を書き込めない

アドレスの指定は文句なしで64bit符号なし整数にしましたが、書き込む値については64bitの符号つき整数(今はこっち)と64bitの符号なし整数の、どっちが良いんでしょうね。贅沢を言えば、どちらも使いたいですけど。

編集者:すずき(2019/04/19 23:35)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



2019年4月12日

ぼやけるWindows

以前の日記(2019年3月17日の日記参照)で、Windows Updateのあとにウインドウのタイトルがズレてしまう話を書きました。

その際に同時に発生する画面がぼやけてしまう現象についてもスクリーンショットを取ったので載せておきます。


ボヤけている状態

このようにフォントがボヤけてしまいます。タスクマネージャの場合はあまり目立ちませんが、アプリケーションによってはさらに顕著です。


サインアウト、サインインしなおした状態

前回は「再起動で直る」と書きましたが、サインインしなおすだけでも直るようです。

ボヤける理由の予想

ざっくりいうと、Windows Updateがテキストサイズの拡大縮小設定を元に戻した後に、サインインしなおさないからじゃないか?と思っています。

Windows 10にはアプリケーションのテキストサイズを調整する機能があります。[Windowsの設定] -> [システム] -> [ディスプレイ] から設定できます。


拡大縮小設定を変更したときの警告文

設定変更すると一部のアプリは、サインアウトするまで、拡大縮小の設定に応答しません、という警告文が表示されます。

購入当初は125% の設定になっていました。初期値はディスプレイの物理的なサイズと解像度によって決まっているそうです。あと、私は拡大縮小の設定を「100%」に変更して使用しています。

以上から導いた私の予想ですが、

  • Windows Updateによって、テキストサイズの設定が初期値(125%)に戻る
  • Windows UpdateがPCを再起動する
  • アプリケーションがテキストサイズ125% で表示する
  • Windows Updateがユーザーが使っていたテキストサイズ設定(私の場合100%)に設定しなおす
  • サインアウトは行わないため、アプリケーションがついてこられずボヤけてしまう

こんな状態になっているのではないかと思っています。

編集者:すずき(2019/04/13 17:06)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



2019年4月1日

簡易CPU消費電力測定

簡易的にCPUの消費電力を測ってみました。測定ポイントはATX電源とACコンセントの間です。要はワットチェッカーでPC全体の消費電力を測っています。

アイドル状態から1スレッド、2スレッド、と負荷を増やし、
(負荷時の消費電力) - (アイドル時の消費電力) =CPUの消費電力
と見なしています。負荷には仮想通貨のマイニングソフトのベンチマークモードを使っています。それなりに複雑な計算と、スレッド数の制御が容易いので便利です。

Ryzen 7 2700のTDPは65Wなのに、消費電力が70W以上に計算されるところからわかるように、消費電力は若干多めに出ています。おそらくCPUの負荷に連動して冷却ファンが回ること、ATX電源の変換効率が負荷によって変わること、などが原因だと思われます。


スレッド数と消費電力

Ryzen 7 2700は8コア16スレッドですが、5スレッドを超えた辺りから、フルパワーの消費電力とあまり差がなくなります。


スレッド数と電力効率

またW辺りの計算効率(kH/s・W)を計算すると、16並列が一番効率が良いです。逆に5〜6スレッド程度だと効率が悪いです。中途半端な並列度で計算するくらいなら、16スレッドフルに使いきれということですね。

コア優先で割り当てたらどうなるか?

上記の実験方法を見て「スレッドをどのCPUに張り付けるかを制御しなくても良いのか?」疑問に感じた方、さすがです。手抜きしていたことがバレましたね。

マイニングソフトのコードを見たら、ちょいと改造すれば簡単にスレッドのaffinityを設定できそうだったので、改造してもう一度測りました。

まずRyzen 7 2700はSMT構成になっていまして、1コアが2スレッド実行可能(OSからは1コア =2 CPUとして扱う)です。私の環境Debian Testingだと、

  • CPU 0: コア0スレッド0
  • CPU 1: コア0スレッド1
  • CPU 2: コア1スレッド0
  • CPU 3: コア1スレッド1
  • ...

以上のように割り当たるようです。ここで素直にCPU 0から順にスレッドのaffinityを設定すると、1つのコアに2スレッドずつ張り付きます。どういうことかと言いますと、4スレッド起動したとき、コア0とコア1に2スレッドずつ張り付いて、他の6コアはヒマになるということです。これはあまり効率が良くなさそうですよね?

今回の測定では、コアを使い切ることを優先してスレッドを割り当てました。当然ながら16スレッドの性能は変わらないのですが、途中の傾向が少し変わります。


スレッド数と消費電力、コア優先割り当て

消費電力は4コアの時点でピークにかなり近くなります。8コアじゃないのは何ででしょうね?2コアがペアで電源制御されているんでしょうか……?


スレッド数と電力効率、コア優先割り当て

電力効率は8スレッドが最大で、16スレッドに向かってやや下がります。SMTの特徴が出ている感じがします。

メモ: 技術系の話はFacebookから転記しておくことにした。多少修正。

編集者:すずき(2019/04/02 00:33)

コメント一覧

  • hdkさん(2019/04/02 22:48)
    去年Ryzen 7 1700で測りましたがやはりTDPより少し高めでした: http://www.e-hdk.com/diary/d201808b.html#15-1
  • すずきさん(2019/04/05 11:03)
    どの CPU というかシステムでも同じ傾向ですね。CPU の消費電力だけ測れているわけではないですし、そんなもんかなーと思いました。
open/close この記事にコメントする



2019年3月31日

ROCKPro64のシリアル文字化け - 真因発見か?

目次: ROCK64/ROCKPro64

ROCKPro64のシリアル文字化け問題に進展がありました。結論から先に言えば、現在のlinux-nextのI/Oドメインaudio_gpio3d4a_msの電圧設定が間違っていそうです。直したらシリアルの波形が綺麗になりました。

RK3399はI/Oドメイン(正式な名前かどうか知らない)といって、いくつかの出力ピンがグループになっています。グループごとに電源ピンがあり、電源ピンに何Vを供給しているか設定する必要があるようです。audio_gpio3d4a_msドメインの電源はAPIO5_VDD端子です。

要はAPIO5_VDD端子に1.8Vを供給するなら、audio_gpio3d4a_msドメインの設定も1.8Vにする必要があり、APIOD5_VDD端子に3.0Vを供給するなら、audio_gpio3d4a_msドメインの設定も3.0Vにする必要があります。

ROCKPro64の回路図を見ると、P.4のPower Domain Mapというページにaudio_gpio3d4a_msには電源IC(RK808)のVLDO7が繋がっていて、1.8Vだと書いてあります。linux-nextはこの記述を見て設定していると思われます。

しかしP.16の回路図を見ると、APIO5_VDD端子にはVCC_3V0(その先はVLDO8)という3.0V出力ピンが繋がっています。つまりROCKPro64の回路図は自己矛盾しています。


APIO5_VDDの配線図


VCC_3V0の配線図

配線ミスってるとか、そんなのありかよ……と思いつつP.16の回路図を信じることにして、audio_gpio3d4a_msを3.0V設定にするパッチをLKMLに送りました。

偉そうに書いていますが、私はP.16の回路図には全く気づいておらず、LKMLのナイスガイ達に助けられました。ありがたいことです。

関係ないドメインなのに、なぜ影響するのか?

UART2信号が出ているGPIO4_C3ピンはgpio1830_gpio4cdドメインに属しており、audio_gpio3d4a_msドメインでは「ない」です。にも関わらず、なぜかaudio_gpio3d4a_msドメインの設定ミスでUART2の波形がおかしくなります。

Power Domain Mapと回路図の意図を整理すると、Power Domain Mapの設計は、下記の通りです。

  • audio_gpio3d4a_ms - APIO5_VDD - VCCA1V8_CODEC - VLDO7
  • gpio1830_gpio4cd - APIO4_VDD - VCC1V5 - VLDO6, VCC3V0_IO - VLDO8

一方の回路図はというと、全然接続が違いますし、端子がなかったりします。

  • VCCA1V8_CODEC - VLDO7
  • VCC_1V5 - VLDO6
  • VCC3V0_IO存在しない
  • audio_gpio3d4a_ms - APIO5_VDD - VCC3V0 - VLDO8
  • gpio1830_gpio4cd - APIO4_VDD - VCC3V0 - VLDO8


VLDO系の配線図

推測ですが、意図せずに2つのドメインで電源ラインVLDO8を共有したために、audio_gpio3d4a_msドメインの設定ミスが、gpio1830_gpio4cd側のドライブ能力に影響していると思われます。

VLDO8に想定してない負荷が掛かっているような気がしますが、大丈夫なんですかね……??まあ、コスパ重視だし、趣味のおもちゃですから、燃えたり爆発したりしなければ問題ないのかな。

(補足)audio_gpio3d4a_msドメインの設定は、GRF_IO_VSELレジスタ(アドレス0xff77e640)のビット1です。

編集者:すずき(2020/10/30 00:50)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



link もっと前
2019年4月13日 >>> 2019年3月31日
link もっと後

管理用メニュー

link 記事を新規作成

<2019>
<<<04>>>
-123456
78910111213
14151617181920
21222324252627
282930----

最近のコメント20件

  • link 21年9月20日
    すずきさん (11/19 01:04)
    「It was my pleasure.」
  • link 21年9月20日
    whtさん (11/17 23:41)
    「This blog solves my ...」
  • link 24年10月1日
    すずきさん (10/06 03:41)
    「xrdpで十分動作しているので、Wayl...」
  • link 24年10月1日
    hdkさん (10/03 19:05)
    「GNOMEをお使いでしたら今はWayla...」
  • link 24年10月1日
    すずきさん (10/03 10:12)
    「私は逆にVNCサーバーに繋ぐ使い方をした...」
  • link 24年10月1日
    hdkさん (10/03 08:30)
    「おー、面白いですね。xrdpはすでに立ち...」
  • link 14年6月13日
    2048player...さん (09/26 01:04)
    「最後に、この式を出すのに紙4枚(A4)も...」
  • link 14年6月13日
    2048playerさん (09/26 01:00)
    「今のところ最も簡略化した式です。\n--...」
  • link 14年6月13日
    2048playerさん (09/16 01:00)
    「返信ありがとうございます。\nコメントが...」
  • link 14年6月13日
    すずきさん (09/12 21:19)
    「コメントありがとうございます。同じ結果に...」
  • link 14年6月13日
    2048playerさん (09/08 17:30)
    「私も2048の最高スコアを求めたのですが...」
  • link 14年6月13日
    2048さん (09/08 17:16)
    「私も2048の最高スコアを求めたのですが...」
  • link 14年6月13日
    2048playerさん (09/08 16:10)
    「私も2048の最高スコアを求めたのですが...」
  • link 02年8月4日
    lxbfYeaaさん (07/12 10:11)
    「555」
  • link 24年6月17日
    すずきさん (06/23 00:12)
    「ありがとうございます。バルコニーではない...」
  • link 24年6月17日
    hdkさん (06/22 22:08)
    「GPSの最初の同期を取る時は見晴らしのい...」
  • link 24年5月16日
    すずきさん (05/21 11:41)
    「あー、確かにdpkg-reconfigu...」
  • link 24年5月16日
    hdkさん (05/21 08:55)
    「システム全体のlocale設定はDebi...」
  • link 24年5月17日
    すずきさん (05/20 13:16)
    「そうですねえ、普通はStandardなの...」
  • link 24年5月17日
    hdkさん (05/19 07:45)
    「なるほど、そういうことなんですね。Exc...」

最近の記事3件

  • link 23年4月10日
    すずき (11/15 23:48)
    「[Linux - まとめリンク] 目次: Linux関係の深いまとめリンク。目次: RISC-V目次: ROCK64/ROCK...」
  • link 24年11月6日
    すずき (11/15 23:47)
    「[Ubuntu 24.04 LTS on ThinkPad X1 Carbon Gen 12] 目次: Linux会社ではTh...」
  • link 24年11月11日
    すずき (11/15 23:26)
    「[Pythonのテストフレームワーク] 目次: Python最近Pythonを触ることが増えたのでテストについて調べようと思い...」
link もっとみる

こんてんつ

open/close wiki
open/close Linux JM
open/close Java API

過去の日記

open/close 2002年
open/close 2003年
open/close 2004年
open/close 2005年
open/close 2006年
open/close 2007年
open/close 2008年
open/close 2009年
open/close 2010年
open/close 2011年
open/close 2012年
open/close 2013年
open/close 2014年
open/close 2015年
open/close 2016年
open/close 2017年
open/close 2018年
open/close 2019年
open/close 2020年
open/close 2021年
open/close 2022年
open/close 2023年
open/close 2024年
open/close 過去日記について

その他の情報

open/close アクセス統計
open/close サーバ一覧
open/close サイトの情報

合計:  counter total
本日:  counter today

link About www.katsuster.net
RDFファイル RSS 1.0

最終更新: 11/19 01:04