link もっと前
   2020年 11月 22日 -
      2020年 11月 13日  
link もっと後

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

2020年 11月 22日

link permalink

link 編集する

OpenSSL の AES アクセラレータを強制的に無効にする

たまに必要になって、いつも調べなおしている気がするので、早く探せるようにメモしておきます。

OpenSSL は AES などいくつかの処理でハードウェアアクセラレータを使うように実装されています。基本的には /proc/cpuinfo のフラグを見て自動的に設定しますが、たまにアクセラレータを強制的に有効 or 無効にしたくなるときがあります。

OpenSSL: ARM 系 CPU の機能フラグを上書きできる箇所

void OPENSSL_cpuid_setup(void)
{
    const char *e;
    struct sigaction ill_oact, ill_act;
    sigset_t oset;
    static int trigger = 0;

    if (trigger)
        return;
    trigger = 1;

    if ((e = getenv("OPENSSL_armcap"))) {
        OPENSSL_armcap_P = (unsigned int)strtoul(e, NULL, 0);    //★これ
        return;
    }

ソースコード(OpenSSL の GitHub へのリンク)をみると、OPENSSL_armcap という環境変数で CPU の持つ機能フラグを好きな値で上書きできることがわかります。

実際使ってみよう

ROCKPro64(Rockchip RK3399, Cortex-A72 + Cortex-A53)で測ってみます。

ROCKPro64 でのベンチマーク結果
# AES アクセラレータ ON

$ openssl speed -evp aes-128-gcm

type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes  16384 bytes
aes-128-gcm     168921.74k   499845.48k   837985.11k  1005767.68k  1070077.27k  1046943.06k


# AES アクセラレータ OFF

$ OPENSSL_armcap=0 openssl speed -evp aes-128-gcm

type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes  16384 bytes
aes-128-gcm      46764.84k    51727.58k    53175.72k    53730.99k    54086.31k    54220.12k

OFF にするとどのサイズでもほぼ同じ速度になり、いかにもソフトウェア処理っぽい結果になります。アクセラレータの ON/OFF が効いていそうですね。

[編集者: すずき]
[更新: 2020年 11月 23日 16:23]

コメント一覧

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



2020年 11月 21日

link permalink

link 編集する

Zephyr のダウンロードとモジュール

目次: Zephyr を調べる - まとめリンク

Zephyr は本体(GitHub へのリンク)と、モジュールに分かれています。

モジュールを 1つも使わなくても Zephyr は動きますが、sanitycheck を実行するときモジュールに依存したテストでビルドエラーが出て、ノイズになってしまいます。

Zephyr のモジュール管理

Zephyr は west という独自のモジュール管理ツールを持っています。インストール方法は公式ドキュメント(Installing west - Zephyr Project Documentation)にあるとおりです。

west のインストール
$ pip3 install --user -U west

Zephyr とモジュールのダウンロード方法も公式ドキュメント(Getting Started Guide - Zephyr Project Documentation)にあるとおりの手順です。

Zephyr のダウンロード(公式手順)
$ mkdir work
$ cd work

$ west init
$ west update

非常に楽ですね。

今まで使っていた Zephyr にモジュールだけ足したい

あまり推奨されるやり方ではないですが、今まで使っていた「素の」Zephyr のツリーを再利用して、モジュールだけ追加したい場合はどうしたら良いでしょうか?

ポイントは west init で生成される .west/config というファイルを手動で作ることです。work というディレクトリに今まで使っていた Zephyr のコードがあるとします。

west のコンフィグファイルを作る
$ cd work

$ west topdir

FATAL ERROR: no west workspace found from "/home/username/work"; "west topdir" requires one.
Things to try:
  - Change directory to somewhere inside a west workspace and retry.
  - Set ZEPHYR_BASE to a zephyr repository path in a west workspace.
  - Run "west init" to set up a workspace here.
  - Run "west init -h" for additional information.

$ mkdir .west
$ cat > .west/config
[manifest]
path = zephyr
file = west.yml

$ west topdir

/home/username/work

コンフィグを作って west topdir が動作したら、west update も実行できるようになっているはずです。モジュールは数が多く手動でダウンロードすると大変ですが、west に持ってきてもらえば楽ですね。

[編集者: すずき]
[更新: 2020年 11月 24日 01:39]

コメント一覧

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



2020年 11月 19日

link permalink

link 編集する

世界耐久選手権

WEC 2019-2020年シーズン 第 8戦(最終戦)バーレーン 8時間 決勝 - TOYOTA GAZOO Racingを読んで。WEC 2019-2020 最終戦、トヨタが 1-2 フィニッシュで優勝とのこと。おめでとうございます。

WEC は世界的な耐久レースシリーズで「ル・マン 24時間耐久レース」の知名度だけ抜群に高いです。24時間耐久はル・マンだけで、他は大体 6時間耐久です。日本も富士 SW でレースしてます。2018年から参加チームの懐事情が厳しい(?)のか、2年で 1シリーズの不思議な開催方式になりました。

WEC 最速は LMP1 クラスというんですが、2016年にアウディ、2017年にポルシェが抜け、プライベーターのレベリオン、SMP もいなくなり、今はトヨタしかいません。耐久レースですから、完走自体が素晴らしいことです。が、同クラスの相手がいない「優勝」はちょっと寂しいですね。

残念なことに、同じ LMP1 クラスと言えども、資金力の差がありすぎて、
LMP1 ワークス(アウディ、ポルシェ、トヨタ)>> LMP1 プライベーター(レベリオン、SMP)
結果はこうなります。2016年を見るとわかりやすいです。ワークスはプライベーターにはまず負けません。10周差とかブッチ切りで勝ちます。

トヨタもこのまま一人で LMP1 でレースを続けるのは嫌だろうし、箱車のプロトタイプカー最高峰 LMP1 クラスはなくなってしまうのか、悲しいなあ……。とか勝手にしみじみしていたのですが、来年からは名前を一新して LMH クラスになって、トヨタはもちろんアルピーヌ(ルノー)が参戦するっぽいです。

以下は、過去の戦績です。

[編集者: すずき]
[更新: 2020年 11月 27日 00:11]

コメント一覧

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



2020年 11月 18日

link permalink

link 編集する

新しいメガネ完成

先日メガネが壊れ(2020年 11月 12日の日記参照)新しく注文した(2020年 11月 14日の日記参照)メガネが完成しました。フレームは増永眼鏡の GMS-831 24 GRY Crystal(メーカーのサイト)、レンズは東海光学です。全部で 7万円くらい。末永く大切に使います。

増永眼鏡のサイトを見るとオシャレな感じです。ブランドものなんですかね?メガネは基本的に店員さんに薦められるがままに買っていて、フレームやレンズのメーカーを意識したことがありません……。

前のメガネも実は AMIPARIS TR-323 というメーカーでした。知らなかったわ……。12年も持ったので、とても良い買い物だったと言えましょう。

視力のバランスが直った

前のメガネは 10年以上も経っていた(2008年 12月 21日の日記参照)だけあって、右だけ度が外れていました(左視力 0.9 右視力 0.5)。今回は両眼とも同じ視力(左、右 0.9)です。今のメガネの方が視力のバランスは正しいです、が、前のメガネと見え方が違って、変な感じがします。そのうち慣れるでしょう。

レンズの度数は L -2.25, R -3.25 でした。中度近視に近づいてきて、メガネなし生活だと辛いというか、見えなくて危険な視力になりつつあります。

以前の度数をお店で聞き忘れてしまったんですが、過去の日記(2008年 12月 23日の日記参照)に書いていました。今回、左のレンズの度数は変えていないので、L -2.25, R -3.0 ですね。

今回作ったメガネはレンズの縁にかなり近い部分でもほとんど歪みがありません。すごいですね。レンズの設計、製造技術も進化していますね。

[編集者: すずき]
[更新: 2020年 11月 20日 01:57]

コメント一覧

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



2020年 11月 17日

link permalink

link 編集する

Zephyr の collaborator

目次: Zephyr を調べる - まとめリンク

Zephyr の RISC-V subsystem の collaborator になりました。といっても、特に何の権限もありません。

TSC Project Roles(リンク)によると、本来は contributor から始まり、collaborator -> maintainer という道を辿るものらしいです。

ところが、RISC-V は過疎っているらしく「なりたいです」って言ったら「どうぞ」ってあっさり通りました。collaborator としてしばらく頑張ると maintainer に昇格する(かもしれない)仕組みらしいです。

[編集者: すずき]
[更新: 2020年 11月 18日 23:10]

コメント一覧

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



2020年 11月 14日

link permalink

link 編集する

メガネを購入

メガネが壊れた(2020年 11月 12日の日記参照)ままだと大変不便なので、早速、品川のパリミキでメガネを買いました。今までとだいぶ雰囲気の違うデザインにしました。出来上がるのは来週くらいかな?あと少しだけ壊れたメガネでがんばります。

在宅なら激しい動きはしませんし、メガネのフレームが半分無くとも、メガネがどこかにぶっ飛んでいくことはありません。余裕です。

[編集者: すずき]
[更新: 2020年 11月 18日 22:50]

コメント一覧

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



2020年 11月 13日

link permalink

link 編集する

FreeRTOS で遊ぼう その 6 - FreeRTOS のパッチがマージされた

目次: FreeRTOS を調べる - まとめリンク

FreeRTOS にぶん投げたパッチが merge されたよとメールが来ていました。たった 1個ですけど、FreeRTOS に名前が残りましたね……。

だから何が起きる訳でもないんですけど。記念にはなりますね。

[編集者: すずき]
[更新: 2020年 11月 18日 22:44]

コメント一覧

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



link もっと前
   2020年 11月 22日 -
      2020年 11月 13日  
link もっと後

管理用メニュー

link 記事を新規作成

合計:  counter total
本日:  counter today

link About www.katsuster.net
RDF ファイル RSS 1.0
QR コード QR コード

最終更新: 11/27 00:11

カレンダー

<2020>
<<<11>>>
1234567
891011121314
15161718192021
22232425262728
2930-----

最近のコメント 5件

  • link 20年09月10日
    すずき 「追加情報。最新の Debian Test...」
    (更新:10/07 16:48)
  • link 20年09月20日
    hdk 「最近は音楽聞く時やビデオ視聴時はミニコン...」
    (更新:09/24 21:43)
  • link 20年09月20日
    すずき 「ありゃー、同じ壊れ方ですね。\n新たなヘ...」
    (更新:09/24 00:23)
  • link 20年09月20日
    hdk 「うちのATH-AD300もやはり頭にプラ...」
    (更新:09/23 12:26)
  • link 20年07月10日
    すずき 「鳥のゲームは知りませんでした。色々やって...」
    (更新:08/11 18:59)

最近の記事 20件

link もっとみる
  • link 20年11月19日
    すずき 「[世界耐久選手権] WEC 2019-2020年シーズン 第 8戦...」
    (更新:11/27 00:11)
  • link 20年11月23日
    すずき 「[調子が良くない Windows 10] 最近ノート PC という...」
    (更新:11/24 01:55)
  • link 20年11月21日
    すずき 「[Zephyr のダウンロードとモジュール] 目次: Zephyr...」
    (更新:11/24 01:39)
  • link 20年02月22日
    すずき 「[Zephyr を調べる - まとめリンク] 日記が増えすぎて、一...」
    (更新:11/24 01:38)
  • link 20年11月22日
    すずき 「[OpenSSL の AES アクセラレータを強制的に無効にす] ...」
    (更新:11/23 16:23)
  • link 20年11月18日
    すずき 「[新しいメガネ完成] 先日メガネが壊れ(2020年 11月 12日...」
    (更新:11/20 01:57)
  • link 20年11月17日
    すずき 「[Zephyr の collaborator] 目次: Zephy...」
    (更新:11/18 23:10)
  • link 20年11月14日
    すずき 「[メガネを購入] メガネが壊れた(2020年 11月 12日の日記...」
    (更新:11/18 22:50)
  • link 20年09月06日
    すずき 「[FreeRTOS を調べる - まとめリンク] 日記が増えすぎて...」
    (更新:11/18 22:45)
  • link 20年11月13日
    すずき 「[FreeRTOS で遊ぼう その 6 - FreeRTOS ] ...」
    (更新:11/18 22:44)
  • link 20年11月12日
    すずき 「[メガネが壊れた] メガネを拭いていたら突然パキッと音がしてフレー...」
    (更新:11/18 22:42)
  • link 20年11月05日
    すずき 「[Kindle の書籍タイトル一覧] Kindle で購入した書籍...」
    (更新:11/10 01:03)
  • link 20年11月04日
    すずき 「[いまいちなデザインの Kindle マンガストア] Kindle...」
    (更新:11/04 21:00)
  • link 20年11月03日
    すずき 「[Kindle Fire 先生ご乱心] 最近 Kindle ストア...」
    (更新:11/04 20:47)
  • link 20年11月02日
    すずき 「[10,000冊突破(99.9%はマンガ)] ついに Kindle...」
    (更新:11/04 20:26)
  • link 20年10月26日
    すずき 「[ROCKPro64 の I2S クロックとピン制御] 目次: R...」
    (更新:11/04 08:58)
  • link 20年10月31日
    すずき 「[FreeRTOS で遊ぼう その 5 - FreeRTOS ] ...」
    (更新:11/01 18:17)
  • link 20年10月21日
    すずき 「[テスラはバッテリーも作ります] 【速報】テスラ「バッテリー・デー...」
    (更新:11/01 18:03)
  • link 18年08月20日
    すずき 「[ROCK64 の U-Boot スクリプトを読む] 目次: RO...」
    (更新:10/30 02:12)
  • link 20年10月23日
    すずき 「[Rock64/RockPro64 - まとめリンク] 日記が増え...」
    (更新:10/30 02:02)

こんてんつ

open/close wiki
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 過去日記について

その他の情報

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