IT

2016年8月 1日 (月)

DSDはピアノ・ピアニッシモを奏でられるのか?

きっかけは20年ほど前の論文を読んだこと。
小型電気炉の温度をPID制御するのに、出力をΔ-Σ変調したオン・オフ信号にしても全然問題なく制御できる、と言った内容。

Δ-Σ変調器 (DSM: Delta-Sigma Modulator) は少ないオーバーサンプリング率の1ビットADCから十分な分解能が得られる技術と理解していた。これは主に周波数領域で考えた場合の理解である。これを時系列領域に読み替えると「同じ分解能を得るために必要な遅れが少ない」になる。なるほど。またADCだけでなくDACにも使える。確かに。

数百円以内で入手できるマイクロコントローラーでDACが用意されているものは稀である。アナログ出力が必要な場合PWMが使われる場合が多い。これをソフトウエアで実装したDSMで置き換えることが有効な場合がありそうだ。

電話音声品質程度ならオーディオ出力用にも使えるかもしれないと思い、容易に実装できる一次DSMについて調べたのだが意外とダイナミックレンジが狭い。同じ技術に基づくDSDやSACDは大丈夫だろうか、と少し詳しく調べてみた。

今回調べたのはデジタル信号処理方式としての特性である。ダイナミックレンジやS/N比は、計算で好きなだけビット幅の大きな信号を生成できるような、全くノイズを含まない信号源を想定した場合の議論だ。実際のオーディオソースのようにもともとノイズを含んでいたり、アナログ部分でノイズを発生したりすることは考慮していない。

続きを読む "DSDはピアノ・ピアニッシモを奏でられるのか?"

| | コメント (0) | トラックバック (0)

2014年6月25日 (水)

SATAアダプターを交換した

PMP (Port MultiPlier) 内蔵のハードディスクケースと接続するため数年前から使っている4ポートSATA-IIアダプターをSATA-III 6Gb/sのものに交換した。ここの所故障続きだったが、これは違う。

以前の記事に書いた通りWindows 8.1に移行するついでに起動ディスクをSSDにして、最初はP45チップセットのSATA-II 3Gb/sポートにつないでみた。これはこれで起動などの速さに不満は無かったのだが、SSD側のインターフェイスに合わせてSATA-III 6Gb/sにしたらどのくらい速くなるのか試したかったのが理由の一つ。実用上差支えないがちょっと気になる不具合が治らないかな、と期待したのがもう一つの理由である。

続きを読む "SATAアダプターを交換した"

| | コメント (3) | トラックバック (0)

2014年6月22日 (日)

ReFSを使う

以前の記事に書いたようにデータディスクをWindows 8.1の記憶域スペース (Storage Space) を使った双方向ミラーに移行した。この場合NTFSに加えてReFSが使えるのだが、ATTOでパフォーマンスを調べてみて驚いた。

Atto_refs

Writeパフォーマンスが 16 IOPS以下・・・ これじゃあ使えないよね、と言うことでReFSは諦めた。

しかし個人で扱うストレージもTBで測るのが当たり前になった今、できれば高信頼性ファイルシステムが使いたい。zfsも試したのだがこれもイマイチだ。Windowsでは直接扱えないのでVM上のLinuxにzfs-fuseとsambaをインストールして仮想ファイルサーバーにしてみたのだが、案の定オーバーヘッドが大きくCPU負荷が高い。また上のReFS程ではないにしてもzfsそのもののWriteパフォーマンスが良くない。

仮想環境の影響もあるだろうし、商用版zfsとは違う可能性もあるから、一概に「zfsはダメ」と言うのは不適切かもしれない。しかしWindowsのローカルファイルシステムと同じように使うのにこの方法以外は思いつかないから、他に評価のしようがない。

ここで少し見方を変えてみた。ReFSはWindows Server 2012および同R2にも搭載されている。全世界で販売されているサーバー製品である。さすがに 16 IOPSは無いんじゃあないの。何か間違えたのかな、と思い直し、パフォーマンスを測りなおしてみた。

続きを読む "ReFSを使う"

| | コメント (6) | トラックバック (0)

2014年6月16日 (月)

PSUを交換したらメモリーの問題も解決した

PSU (電源ユニット) が壊れた事を取り上げた記事に書いたスリープの不調が治ったのに似た話だが、PSU交換以前はうまくいかなかったメモリーモジュールの4枚刺しができるようになった。

続きを読む "PSUを交換したらメモリーの問題も解決した"

| | コメント (0) | トラックバック (0)

2014年6月15日 (日)

Windows 8/8.1: SATAモード変更 (IDE⇔AHCI⇔RAID) に再インストールもregeditも要らない

ディスクインターフェイス周りをいろいろテストする前に、SATAモード変更した時のWindows設定の修正方法を調べた。Windowsを再インストールしなければならないと言う話を以前聞いていたが、とてもそれはやっていられないと思ったからだ。

今回の記事に掲載した手順は私の環境で確認したものである。他の環境ではこの通りにならない場合もあると思われるので、ご承知おき願う。

続きを読む "Windows 8/8.1: SATAモード変更 (IDE⇔AHCI⇔RAID) に再インストールもregeditも要らない"

| | コメント (12) | トラックバック (0)

2014年6月13日 (金)

Hitachi HDS721050CLA360が壊れかかっていた・・・

前回の記事に書いた通り、IRST (Intel Rapid Storage Technology) によるRAID1のReadパフォーマンスがおかしい。いろいろ調べたり試したりした結果、Windows 8.1の記憶域スペース (Storage Space) を使った双方向ミラーに移行することにした。

データをバックアップした後アレイを解除する。こうすると全く同じ内容の単体ディスクが2台できる。それぞれATTOベンチマークを試すと明らかにおかしいのが1台見つかった。

Atto_disk1_unmirrored

なんだオマエか、足を引っ張っていたのは…。マトモならこうならなくてはいけない。

Atto_disk2_unmirrored

しかし特にエラーも出さずにReadが遅くなるだけの故障パターンは初体験である。どうなっているのか少し詳しく調べてみた。

続きを読む "Hitachi HDS721050CLA360が壊れかかっていた・・・"

| | コメント (0) | トラックバック (0)

2014年6月 1日 (日)

IntelチップセットのRAID1が遅い

2014/6/13追記: 2x Hitachi HDS721050CLA360によるRAID1のReadパフォーマンスが単体ディスクよりかなり劣る結果になっているが、これはミラーを構成する1台のディスクのReadパフォーマンスが酷く悪くなる問題が発生していたことが原因と判明した。詳細は別の記事を参照されたい。

ここ数年IntelチップセットによるRAID1を使っているのだが、「RAID1の読み込みパフォーマンスはシングルドライブよりも良くなる」とIntelが公式に述べているのを最近知った。なるほど理屈は確かにその通りのように思える。しかし実際そうなのか、と調べたら意外な結果が待っていた。

Cdm_129_h Cdm_129

ドライブH: はWDC WD20EARS-00MVWB0、ドライブS: はHitachi HDS721050CLA360、それぞれ2台ずつ使ったRAID1構成である。どちらもかなりデータが詰まっているのでその影響を考慮してやる必要があるが、どう見ても「RAID1の読み込みパフォーマンスはシングルドライブよりも劣る」としか思えない。どうなっているのだろう?

続きを読む "IntelチップセットのRAID1が遅い"

| | コメント (0) | トラックバック (0)

2014年5月 5日 (月)

SearchFilterHost.exeの暴走原因はXml爆弾

以前記事にしたSearchIndexHost.exeの暴走がWindows 8.1でも発生することに気付いた。今回は暴走を引き起こしているファイルを特定できた。それはXml爆弾(またはBillion laghs)である。

続きを読む "SearchFilterHost.exeの暴走原因はXml爆弾"

| | コメント (1) | トラックバック (0)

2014年4月 5日 (土)

Windows 8.1の自動メンテナンスでSSDがデフラグされてしまう

メインコンピューターのWindowsを8.1に替えた。起動用に追加したSSDにインストールしたこともあり、以前使っていたVistaに比べて起動が格段に速くなって実に快適である。使い勝手がかなり変わったのは事実だ。新しくなったスタート画面やそこから始めるアプリを使わないようにすれば、一部で言われているように酷いものではないと思う。8から8.1になってマシになったこともあるのだろう。

新しいWindowsにアタマが馴染んで細かいことに気を配るだけの余裕が出てきたからだろう。自動メンテナンスの一環としてドライブの最適化が行われるのだが、ここでSSDがマトモにデフラグされていることに気付いた。

続きを読む "Windows 8.1の自動メンテナンスでSSDがデフラグされてしまう"

| | コメント (6) | トラックバック (0)

2014年3月 2日 (日)

BeagleBone BlackのPRUを試す

以前の記事のまとめに「Ti AM3359には、ADCのContinuous modeと呼ばれる動作モードやPRU (Programmable Real-Time Unit: 200MIPSのリアルタイム処理用マイクロコントローラー) と呼ばれるI/Oサブシステムがあるが、現在のカーネル3.8では利用できない。」と書いた。ADCのContinuous modeがカーネル3.8で利用できないのは概ね正しいと思うが、PRUについては誤りだった。比較的簡単に利用できる。

今回はPRUを使えるようにする方法を紹介する。正しく理解しているかどうか確信の持てない内容も一部含んでいるが、ご容赦いただきたい。利用した環境はカーネル3.8.13-bone28が動いているDebian wheezyである。他のディストリビューションでも本質的に同じだと思うが、カーネルのリリースが異なるとPRUをサポートする機能の仕様が違っていたり、あるいは仕様が同じでも不具合があったりする可能性がある点に留意して欲しい。

続きを読む "BeagleBone BlackのPRUを試す"

| | コメント (3) | トラックバック (0)