おなまえ
Eメール
タイトル
コメント
参照先
暗証キー (英数字で8文字以内)
画像認証 (右画像の数字を入力) 画像認証
Re: BeagleBone Black(6) 投稿者:yo 投稿日:2013/09/03(Tue) 22:00 home No.3509

syuさん

> dsdリピート再生、昼間の6時間越え、達成しました ^.^

rtoptありのmpd-dsdでも中断なしに再生できたということですね。「syが18-20%程度まで増えていましたが」ということなので、僕の環境では確実に再生中断になる状況なので、不思議ですね。

> 代わりに、再生継続のまま無音が続きます。曲の途中で音が消えるわけではないので、実害は減りました。

この意味ですが、曲の終わりまで再生できて、そのあと音が出ていないのに再生が継続しているように表示されるという意味ですか。また「音消え」というのは再生が一時的に中断されるという意味ですか。

> おそらくmpd-dsdで、このパッチと同等の修正が加わったのだろうと思います。

その通りだと思います。jurgenさんはdsd再生がメインのはずだから、同じようなトラブルにあい、対応されたということでしょう。


こちらでの実験結果ですが、残念ながら、BBBだとどうやっても再生中断は解消されないですね。
raspberrypiサーバ(3.10.10カーネル)がcuboxで好成績だったので(rtopt有りのmpd-dsdでも長時間の連続再生可能でした)、BBBでも試してみましたが、rtopt無しmpd-dsdでも再生中断は発生しますね。BBBに関してはサーバは関係なさそうです。
おっしゃるように再生中断は20分位で発生しました。またtop画面でcpu負荷を確認しましたが、20%近い値で、cuboxの倍以上です。このあたりが影響しているのだと思います。
原因がBBBにあるのか3.8.13rtカーネルかは不明です。タグを使って、3.8の問題が発生する以前のバージョンに戻し、試してみたのですが、起動でエラーになってしまうのですよね。

rtsetのserviceファイルの書式は問題ないと思います。topの表示も正しく設定されてように見えます。

いろいろ試して分かったことはあるのですが、もう少し整理してから書きます。


Re: BeagleBone Black(6) 投稿者:yo 投稿日:2013/09/03(Tue) 22:07 home No.3510

tinkerさん

> Archってdebianでunstableを使ってるみたいなドキドキ感がありますね^^;

ほんとじゃじゃ馬ですね(^^;;;。昨日出来ていたことが今日は駄目になる世界ですね。

> 2については、yoさん,syuさんの対応の他に、PKGBUILDでは以下のようにしているようです。

これってどこの情報ですか。


Re: BeagleBone Black(6) 投稿者:tinker 投稿日:2013/09/03(Tue) 23:21 home No.3511

yoさん
>これってどこの情報ですか。
ABS(Arch Build System)を入れてます。使ってないですけど^^;
mpdのPKGBUILDを見ると以下のようになってます。

pkgname=mpd
pkgver=0.17.5
pkgrel=1
pkgdesc='Flexible, powerful, server-side application for playing music'
url='http://www.musicpd.org/" target="_blank">http://www.musicpd.org/'
license=('GPL')
arch=('i686' 'x86_64')
depends=('libao' 'ffmpeg' 'libmodplug' 'audiofile' 'libshout' 'libmad' 'curl' 'faad2'
'sqlite' 'jack' 'libmms' 'wavpack' 'avahi' 'libid3tag' 'yajl')
makedepends=('doxygen')
source=("http://www.musicpd.org/download/" target="_blank">http://www.musicpd.org/download/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.xz"
'tmpfiles.d')
sha1sums=('a12b78452de5ff876c36827572c6bb4af26e0f7d'
'f4d5922abb69abb739542d8e93f4dfd748acdad7')

backup=('etc/mpd.conf')
install=install

prepare() {
cd "${srcdir}/${pkgname}-${pkgver}"
sed 's:cdio/paranoia.h:cdio/paranoia/paranoia.h:g' -i src/input/cdio_paranoia_input_plugin.c
sed 's:AVCODEC_MAX_AUDIO_FRAME_SIZE:192000:g' -i src/decoder/ffmpeg_decoder_plugin.c
}


Re: BeagleBone Black(6) 投稿者:syu 投稿日:2013/09/04(Wed) 15:14 home No.3512

本日休日なので、昼過ぎから少し試してみました。

yoさん

>「syが18-20%程度まで増えていましたが」ということなので、僕の環境では確実に再生中断になる状況なので、不思議です ね。

ここの挙動は不安定で不思議ですね。わたしのbbb/arch/Fe では、電源断から起動した直後には、 dsdでcpu%-syが10%以下です。以前は数時間で徐々に18-20%程度まで上がり、 音が消え初め、次いで、tty、sshどちらも接続できなくなっていました。

今回新しくインストールし直したarch linuxだと、cpu%-syの値が長時間安定しています。No.3507で例示したtopは 6時間以上経過した後 ですが、cpu%-syは12%程度までの増加で済んでいます。徐々 にはcpu%-syが増加しますが、増加速度が遅 いので、bbbが落ちるまでの時間が長くなる印象です。

もう一つ不思議なのは、リセットボタンで強制再起動した ときだ けでなく、 rebootコマンドで正しく再起動した場合でも、cpu%-sy が下がらず、再起動前 の状態が(むしろやや悪 化して)引き継がれたよ うに見えることです。

 ※  shutdownして 10秒以上置いてから電源を入れると、dsd再生で のcpu%-syも10%程度に下 がります。
 ※ reboot コマンドやリセットボタンで の再起動ではcpu%-sy 増加の原因が消さ れずに残っていることになります。不思議で す。

7月24日にダウンロー ドしたArchLinuxARM- am33x- latest.tar.gzは 177,564,166 bytesでしたが、 9月1日取得版は 163,610,621 bytesで、新しくなっています。これが cpu%-syの増加速度に影 響している可能性はあるかもし れません。

>曲の終わりまで再生できて、そのあ と音が出ていないのに再生が継続しているよ うに表示される

そ の通りです。 0.17.4のとき曲終端でノイズ が出ていた音源に限定した現象です。 gmpcのプログレスバーは次の曲に切り替わって進 行し、 topの状態も変わりなく cpu%-syも低いままで急変しません。 dacの表示は176kHzに変わ り、無音(軽 いホワイトノイズ)になります。 gmpcから [停止] ≫ [再生] で音が復帰します。

>BBBに関してはサーバは 関係なさそうです。

わたしの環境で は、qnap-st212と cubox/arch-linux-3.10.10-no forced preemption だ けが再生中断を生じません。 cubox/archでも他の preemption modelだ と数時間が限界のようです。つまり、bbb とcifsサーバの両方が相 互に関与し合っているように見 え るんですよね ^.^;;

サーバを替えて、topの状態を比較してみました。

○ alix3d2サーバでは cpu%-syが20%程度の高い値

top - 14:49:24 up 3 min, 1 user, load average: 2.23, 0.70, 0.26
Tasks: 70 total, 1 running, 69 sleeping, 0 stopped, 0 zombie
%Cpu(s): 2.1 us, 20.9 sy, 0.0 ni, 76.3 id, 0.0 wa, 0.0 hi, 0.7 si, 0.0 st
KiB Mem: 513420 total, 237052 used, 276368 free, 6404 buffers
KiB Swap: 0 total, 0 used, 0 free, 169824 cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
64 root -56 0 0 0 0 S 14.6 0.0 0:27.28 irq/35-musb+
226 root -54 0 61152 58288 13928 S 3.0 11.4 0:06.03 mpd
76 root -54 0 0 0 0 S 2.3 0.0 0:04.27 irq/57-4a10+
254 root -54 0 0 0 0 S 2.3 0.0 0:03.91 cifsd
403 root 20 0 4612 1276 1008 R 0.7 0.2 0:01.01 top
3 root 20 0 0 0 0 S 0.3 0.0 0:00.27 ksoftirqd/0
77 root -51 0 0 0 0 S 0.3 0.0 0:00.57 irq/58-4a10+

○ umount /root/musicした後、qnapに接続先を変更してmount -a 
(paworoffなしだと cpu%-syは高いまま)

top - 14:53:44 up 8 min, 1 user, load average: 0.15, 0.52, 0.31
Tasks: 68 total, 1 running, 67 sleeping, 0 stopped, 0 zombie
%Cpu(s): 2.5 us, 19.6 sy, 0.0 ni, 76.9 id, 0.0 wa, 0.0 hi, 1.1 si, 0.0 st
KiB Mem: 513420 total, 100512 used, 412908 free, 6428 buffers
KiB Swap: 0 total, 0 used, 0 free, 33480 cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
64 root -56 0 0 0 0 S 14.2 0.0 0:53.12 irq/35-musb+
226 root -54 0 61152 58288 13928 S 3.3 11.4 0:11.50 mpd
76 root -54 0 0 0 0 S 2.0 0.0 0:08.29 irq/57-4a10+
414 root 20 0 0 0 0 S 2.0 0.0 0:00.50 cifsd
77 root -51 0 0 0 0 S 0.7 0.0 0:01.20 irq/58-4a10+
17 root 20 0 0 0 0 S 0.3 0.0 0:00.45 kworker/0:1
416 root 20 0 4612 1276 1008 R 0.3 0.2 0:00.17 top

○ qnap に接続したまま poweroff > 10sec. > power onした場合は cpu%-syが低くなるが、cuboxの方が優秀。

top - 14:58:06 up 1 min, 1 user, load average: 0.42, 0.19, 0.07
Tasks: 70 total, 1 running, 69 sleeping, 0 stopped, 0 zombie
%Cpu(s): 1.2 us, 13.3 sy, 0.0 ni, 83.9 id, 0.0 wa, 0.0 hi, 1.6 si, 0.0 st
KiB Mem: 513420 total, 100776 used, 412644 free, 6404 buffers
KiB Swap: 0 total, 0 used, 0 free, 33412 cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
64 root -56 0 0 0 0 S 14.2 0.0 0:04.79 irq/35-musb+
226 root -54 0 61152 58288 13928 S 3.3 11.4 0:01.72 mpd
254 root -54 0 0 0 0 S 2.6 0.0 0:00.96 cifsd
76 root -54 0 0 0 0 S 2.0 0.0 0:00.92 irq/57-4a10+
77 root -51 0 0 0 0 S 0.3 0.0 0:00.15 irq/58-4a10+
190 root 20 0 4772 3532 472 S 0.3 0.7 0:02.03 haveged

○ no.3507から転載。cuboxの場合。cpu%-syが最も低い。

top - 19:03:31 up 6:07, 1 user, load average: 0.03, 0.07, 0.21
Tasks: 68 total, 1 running, 67 sleeping, 0 stopped, 0 zombie
%Cpu(s): 2.3 us, 11.7 sy, 0.0 ni, 84.8 id, 0.0 wa, 0.0 hi, 1.2 si, 0.0 st
KiB Mem: 513420 total, 373560 used, 139860 free, 1628 buffers
KiB Swap: 0 total, 0 used, 0 free, 310980 cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
64 root -56 0 0 0 0 S 14.2 0.0 51:58.06 irq/35-musb+
226 root -54 0 61292 58428 13928 S 3.0 11.4 12:09.01 mpd
76 root -54 0 0 0 0 S 2.3 0.0 7:46.92 irq/57-4a10+
254 root -54 0 0 0 0 S 2.3 0.0 7:25.61 cifsd
427 root 20 0 4612 1276 1008 R 0.7 0.2 0:00.16 top
77 root -51 0 0 0 0 S 0.3 0.0 1:00.42 irq/58-4a10+
423 root 20 0 0 0 0 S 0.3 0.0 0:02.89 kworker/0:2

いずれも、bbb側は、/etc/fstabの変更だけです。
相互作用の原因がわからないのが問題なんですよね。

bbbのcifsdに問題があるのかなあ。
他の機種のmpdでサーバを替えてどうなるかですかね。

tinkerさ ん

>mpdの PKGBUILD

見てもわからな い私には、ABSは まだ早過ぎるよ うです ;-p


Re: BeagleBone Black(6) 投稿者:yo 投稿日:2013/09/04(Wed) 19:23 home No.3513

tinkerさん

お答えありがとうございました。

ABSですか。mpdのビルドが簡単になるのなら、試してみますかね。しかし、
sed 's:AVCODEC_MAX_AUDIO_FRAME_SIZE:192000:g' -i src/decoder/ffmpeg_decoder_plugin.c
というのは随分乱暴な修正のしかただと思いますが(ハードコーディング)、どうなのですかね。まあ人のことはいえなけど(^^;;;。


Re: BeagleBone Black(6) 投稿者:yo 投稿日:2013/09/04(Wed) 19:24 home No.3514

syuさん

とりあえず、こちらで分かっていることを書いておきます。
BBBはまだ試していないのですが、cuboxの方では、rtoptパッチと3.10.9-rtカーネルを共存させる方法は分かりました。
ハードウェア割り込みの優先レベルは梅雨入りバージョンのままにしておいて(lan=56、usb=55、その他=51)、mpdプロセスの優先レベルを40番台に下げます(player=47、decoder=46、audio_output=47)。あとは以下のスクリプトをブート時に起動します。
#!/bin/sh

while true
do
chrt -f -p 49 `pgrep kworker/0:0`
chrt -f -p 49 `pgrep kworker/0:1`
chrt -f -p 49 `pgrep kworker/0:2`
sleep 300s
done

要するにrt優先度の指定の問題です。kworkerというのはカーネルの割り込み処理に関連するプロセスのようですが、これがmpdプロセスに妨害されて動けなくなると再生中断が発生するということのようです。
これで、sacd3枚分の連続再生はできることは確認しました。nasは僕の環境で一番再生中断を起きやすい玄柴nfsモードです。


Re: BeagleBone Black(6) 投稿者:syu 投稿日:2013/09/05(Thu) 20:04 home No.3517

yoさん

>あとは以下のスクリプトをブート時に起動

rtカーネルでのdsd中断対策が無限ループみたい、って言う冗談なのかと思ってしまいました ^^;;

斬新なアイディアに脱帽です。kworkerと言うプロセス、調べても私には理解できませんでしたが、優先度を5分おきに再指定する必要があるような挙動をするプロセスなんですね。

bbbだとどうなのか、3.8.13-rt9ですが適用してみました。

> mpdプロセスの優先レベルを40番台に下げます(player=47、decoder=46、audio_output=47)。

この通りにmpdconfでの指定を変更。

no.3507で使ったrtset.serviceで呼び出すrtsetスクリプトを変更。

[root@arch-mpd ~]# nano /usr/local/sbin/rtset

#!/bin/sh
chrt -f -p 55 `pgrep irq/35-musb-hdr`
chrt -f -p 53 `pgrep irq/57-4a100000`
sleep 10
chrt -f -p 53 `pgrep cifsd`


新しく、kwsetと名付けたスクリプトを作成

[root@arch-mpd ~]# nano /usr/local/sbin/kwset

#!/bin/sh
top
while true
do
chrt -f -p 49 `pgrep kworker/0:0`
chrt -f -p 49 `pgrep kworker/0:1`
chrt -f -p 49 `pgrep kworker/0:2`
sleep 300s
done

ログイン後に適当なタイミングでkwsetを実行しました。
これで、無限ループしている最中の top を見ることができましたが、bbbでtopを眺める程度では、taskがひとつ増えた以外の違いはわかりませんでした。(ターミナルをsshでもう一つ開いても操作は可能でしたね。)

> これがmpdプロセスに妨害されて動けなくなると再生中断が発生

この現象は、何かで観察されたのですか。

>nasは僕の環境で一番再生中断を起きやすい玄柴nfs

やはりこうやるのが王道ですね。


Re: BeagleBone Black(6) 投稿者:tinker 投稿日:2013/09/05(Thu) 20:17 home No.3518

yoさん
>随分乱暴な修正のしかただと思いますが
Archは以前のVer(0.17.3だったかな)でも同じように修正しているみたいです。
まっ、動けばいいかと^^;

>chrt -f -p 49 `pgrep kworker/0:0`
wandboardで故あって同じこと試してるところでした。こちらでは、ksoftirqdを上げてみました。
debian,ubuntuはうまくいってるんですが、Archが・・・
今度、kworkerで試してみます。


Re: BeagleBone Black(6) 投稿者:yo 投稿日:2013/09/06(Fri) 19:16 No.3521

syuさん

> rtカーネルでのdsd中断対策が無限ループみたい、って言う冗談なのかと思ってしまいました ^^;;

(大笑い)。
ご明察の通りで、kworkerというプロセスがゾンビのごとく生まれ変わり、cpu負荷を使って動き回って、mpdのdsd再生を中断させているように見えたのので、とった対策です。
BBBでの対応はお書きになっている内容でOKだと思います。

> この現象は、何かで観察されたのですか。

rtoptパッチをかけていないmpd-dsdを使っていても、chrtでプロセスの優先度を指定すると、同じようにdsd再生中断になるので、これは優先度の指定の問題だなと気が付きました。
ps -eLo pid,lwp,rtprio,priority,cmd | sed -f /root/rtopt.scr > /root/rtopt.sh
sedのスクリプトは以下の通りです。
/\/usr\/local\/bin\/mpd/{
N
N
N
N
s/[^\n]*\n[^\n]*\n *[0-9][0-9]* *\([0-9][0-9]*\)[^\n]*\n *[0-9][0-9]* *\([0-9][0-9]*\)[^\n]*\n *[0-9][0-9]* *\([0-9][0-9]*\)[^\n]*/chrt -f -p 52 \1\nchrt -f -p 49 \2\nchrt -f -p 53 \3\n/p
}
d
この後、rtopt.shを実行します(sh ./rtopt.sh)。
topで調べて、kworkerというやつがしつこく動いていることので、コイツが諸悪の頑強かなと考え、やってみました。

> やはりこうやるのが王道ですね。

ということなので、確実に再生中断が発生する環境で実験してみて下さい。
もっとも、これで再現するとますます謎は深まるのですが(^^;;;。


Re: BeagleBone Black(6) 投稿者:syu 投稿日:2013/09/16(Mon) 15:25 home No.3531

なかなか時間がとれなくて停滞しています。

>確実に再生中断が発生する環境で実験

私の試せる範囲では、alix3d2/voyage-mpd/nfs3が、dsdではブチブチと断続状態になっていました。(クライアントはbbb/debian/nfs3)

私はarch linuxに拘る係なので(^^;;; alix3d2にmpdなしのvoyage-linuxを入れ、bbb/arch向けにnfs4の指定をしてみました。

すると、ubuntu-pcからはnfs4で接続できるのに、bbb/archからは接続できません。showmount -eではデータサーバが表示されるのに、マウントしようとすると跳ねられるんですよね。

仕方ないのでalix側をnfs3にしたらbbb/archからも接続できました。このとき、bbb/archでは、rpcbindの設定が必要でした。

# nano /etc/hosts.allow

rpcbind: 192.168.11.0/24 #環境によります

# systemctl enable rpcbind
# systemctl start rpcbind

不思議ですが、kworkerをいじらなくても、bbb/arch/nfs3で中断なくdsdが再生できます。でも・・音は・・相当・・悪い(^^">

cubox/arch-NFP-serverにnfs3の設定もしてみましたが、これはbbb/arch/nfs3から接続できません。ファイアウォール関連なのか不詳。

今のところ、わたしの環境では、cubox/arch-NFP-server/cifsが安定度でも音でも、最強です。

dsd再生中のtop(cubox/arch-smb <-> bbb/arch-mpd)

top - 15:27:32 up 44 min, 1 user, load average: 0.01, 0.12, 0.17
Tasks: 69 total, 1 running, 68 sleeping, 0 stopped, 0 zombie
%Cpu(s): 2.0 us, 8.8 sy, 0.0 ni, 88.0 id, 0.0 wa, 0.0 hi, 1.2 si, 0.0 st
KiB Mem: 513420 total, 370980 used, 142440 free, 1276 buffers
KiB Swap: 0 total, 0 used, 0 free, 308476 cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
64 root -56 0 0 0 0 S 14.2 0.0 6:13.09 irq/35-musb+
232 root 20 0 61292 58408 13928 S 3.0 11.4 1:17.91 mpd
76 root -54 0 0 0 0 S 1.7 0.0 0:46.57 irq/57-4a10+
270 root 20 0 0 0 0 S 1.7 0.0 0:42.90 cifsd
417 root 20 0 4612 1280 1008 R 0.7 0.2 0:13.21 top
77 root -51 0 0 0 0 S 0.3 0.0 0:11.73 irq/58-4a10+
411 root -51 0 0 0 0 S 0.3 0.0 0:02.29 irq/88-OMAP+
1 root 20 0 4796 2668 1796 S 0.0 0.5 0:02.00 systemd

では、また。


Re: BeagleBone Black(6) 投稿者:yo 投稿日:2013/09/16(Mon) 21:28 home No.3533

syuさん

BBB(3.8rt + arch latest)での確認はこちらでもとってまして、NGでした。優先度をチューニングした環境で再生中断、mpdハングどちらも発生しますね。
まあ予想通りの結果だったのですが、syuさんの環境だと発生しないというのは不思議です。何かnas環境の違いでそういうことになるのでしょう。音が悪いというのは同感です。cpu負荷の問題だと思うのですが、僕の環境だと20%前後となりsyuさんの環境とは大分違うのがよく分かりませんね。

BBB&archという環境はかなりの「じゃじゃ馬」で僕のところでもいろいろ摩訶不思議なことが次々と発生、対応におおわらわという状況です。メゲまして(^^;;;、BBBでのDSD再生は断念し、HD7A-192改専用にして、CDリップした44.1KHzFlacファイル専用に使うことにしました。これは本当に良い音だと思います。現状ではDSD再生はCuboxに任せることにしました。BBB 3.10rt版の登場待ちですね。


Re: BeagleBone Black(6) 投稿者:まさまさ 投稿日:2013/09/16(Mon) 23:28 home No.3538

みなさま お久しぶりです。

コンパイル作業は私にはちょっと敷居が高くて、その後ずっとロムさせていただいておりました。
もしよければ現状でのイメージを公開していただけないでしょうか?

当方CDリップした44.1KHz Flacがほとんどで、現状でも問題は発生しておらず、かなり良い音を楽しませていただいているのですが、みなさまのご苦労のたまものを、ぜひとも聞かせていただければと思っております。

どうぞよろしくお願い致します m(_ _)m


Re: BeagleBone Black(6) 投稿者:syu 投稿日:2013/09/17(Tue) 00:38 home No.3539

まさまささん。

確かに、bbb/arch/rtoptとcubox/NFPserverを、imgかtar.gzで公開した方が話が進みますね。上手くいってない場合も皆で検討すれば突破口が見つかるかもしれません。しばし、お時間をいただきます。


Re: BeagleBone Black(6) 投稿者:yo 投稿日:2013/09/17(Tue) 20:59 home No.3541

syuさん

> 確かに、bbb/arch/rtoptとcubox/NFPserverを、imgかtar.gzで公開した方が話が進みますね。

気長にお待ちします。イメージ化するのが面倒なら、rootfs丸ごとtar.gzで十分だと思います。同じハード構成なのに、nasの違いで現れている現象はかなり差あるので、興味があります。

あと、Cubox+3.10.9+rt5+mpd-dsdの方は梅雨入り版に追加変更した部分だけtar化して公開するのは簡単ですが、興味のある方いますかね。


Re: BeagleBone Black(6) 投稿者:m 投稿日:2013/09/18(Wed) 22:46 home No.3544

私も BBB 試してみました。
みなさん仰るとおり、良い音ですね!CuBox の力強い音もとても魅力的でしたが、BBB は繊細でより情報量が多いように感じます(ジャンルによって使い分けても良さそうですね)。
ただ、私の環境でも DSD は数分で再生中断します(CuBox は全く問題なし)。
それといろいろと挙動に再現性がなく?怪しい感じが(笑)。妖怪かな?

syuさん
yoさん同様、興味あります。イメージ公開を気長にお待ちします。

yoさん
> あと、Cubox+3.10.9+rt5+mpd-dsdの方は梅雨入り版に追加変更した部分だけtar化して公開するのは簡単ですが、興味のある方いますかね。

興味あります!
CuBox の音はこれはこれで魅力的ですし、DSD は現状 CuBox がないとまともに聴けませんので、
気長にお待ちします。


# みなさん tsunamp ってご存知でしょうか?
CuBox や BBB もサポートということで面白そうです。
http://www.tsunamp.com/comingsoon/" target="_blank">http://www.tsunamp.com/comingsoon/


Re: BeagleBone Black(6) 投稿者:syu 投稿日:2013/09/21(Sat) 21:47 home No.3551

yoさん、皆様

BBB/arch/mpd-dsd-rtoptのtarを作ろうとしていますが、多少の混乱を生じています。

nasの問題を切り分けてみるためと音質のリファレンスにするため、新たにsd-musicディレクトリを作り、ここにdffファイルをサーバ(cubox)からコピーしようとしたのですが、すぐにメモリが足りなくなってしまいました。

sdカードの容量がそれほど少ないはずはないので、sdカードを取り出してリーダにマウントし、中を見たのですが、rootfsは9月初めにインストールしたままのarch linux。あれこれ改変した痕跡がありません。

慌ててemmcを覗いてみたら、No.3507で話題にしたrootfsは、実はこっちでした。

しかし、カードなしでemmcから起動してみると、今度は途中で止まってしまう(^^;;

改変なしのarch linuxでsdカードから起動し、emmcのrootfsに入り、
# tar czvf ../arch-bbb-rootfs.tar.gz .
とやって、emmcのrootfsを取り出しましたが、これが動いてくれるかどうか・・・今から動作確認等やってみます。

連休中には何とかしたいですが、気長にお待ちくださいませ。

一連の作業をしているときに気づいたのですが、arch linuxのmpdはmpd-0.17.5-1からmpd-dsd-0.17.5に変わってますね。


Re: BeagleBone Black(6) 投稿者:yo 投稿日:2013/09/21(Sat) 22:18 home No.3552

syuさん & 皆様

こちらも混乱の極みです。

> あと、Cubox+3.10.9+rt5+mpd-dsdの方は梅雨入り版に追加変更した部分だけtar化して公開するのは簡単ですが、興味のある方いますかね。

実は試してみたのですが、同じように奇怪な妖怪に遭遇しています。

tarボールを作り、梅雨入り版にに書き込んでみたのですが、駄目ですね。異常にcpu負荷が高くなり(ほとんど100%)、まともなdsd再生が出来なくなります。tarボールは3.10化した現用のcuboxシステムから作っていますので駄目になる理由がよくわからないのですよね。やっぱりarchには魔物が潜んでいるとしか思えません。ウームです。


Re: BeagleBone Black(6) 投稿者:まさまさ 投稿日:2013/09/21(Sat) 22:49 home No.3553

syu さん

気長にお待ちしております♪

私の BBB はその後、何もいじっていないせいか、極めて好調に動いております。

ちなみに、今までずっと 0731pe の方で聞いています。
理由としては、44.1K flac でパチノイズが出ないからです。
0731rt だと、44.1K flac で、かなりパチノイズが出るのと、NHK-FMだとちょっと聞いてられないくらいに出たのです。
ただ、0731pe でも 192K Flac にすると、パチノイズが出始めますので、やっぱりCPU負荷が高くなると出るのかなぁと思っていまして、皆様が実施されている kworker の処理を入れられれば、rt でもパチノイズなく再生できるのではと思った次第です。

それから NAS 側の CuBox ですが、実をいうと今まで使っていたしょぼいNASと比べ、私の耳では違いが判らなかったです。
なぜ CuBox を NAS に使っているかというと、ESATA, USB を使って2台の外付けHDが付けられて、GigaEthernet があるためなのです。


Re: BeagleBone Black(6) 投稿者:コウ 投稿日:2013/09/23(Mon) 16:37 home No.3564

yo様、皆様

この度皆様のお陰で何とか運用にこぎ着けました。
改めてお礼を申し上げます。

電源をトランスを使用し、レギュレーターにはローノイズ型の
TPS7A47を使用したところかなりの音質アップとなりました。

スチッチング型のアダプターでは上記と同じ電源対策したvoyage starterkit(シンさんバージョン)の方が良い位でしたが、電源対策する事でBBBが化ます。

S/Nが上がり音の消えゆく様がよく分かり、アーティストの気配を感じる様です。
高音質化に電源対策は必須だと改めて感じた次第です。

以上、そんな事既に知っていると言われそうですが報告させて頂きました。


Re: BeagleBone Black(6) 投稿者:まさまさ 投稿日:2013/09/24(Tue) 02:13 home No.3565

> 皆様が実施されている kworker の処理を入れられれば、rt でもパチノイズなく再生できるのでは

今日は思い立って、0731rt で yo さんの No. 3514 の書き込み通りの方法でパチノイズが止まるかどうか、ちょっと敷居が高かったのですが頑張ってやってみました。

スクリプトを起動時に立ち上げるっていう技がわからず、ssh terminalで接続している root アカウントから起動して、プロンプトが返ってこない状態で確認しました。

結果ですが、192K, 96K FLAC ではまったく変化無しでした。
それで JAVS X-DDC の後の DAC が悪いのかと思い、96K まで対応している AV アンプに接続し、96K FLAC を再生してみたのですが、残念ながらまったく同じ状況でした。
ということで、rt のソフトに何か問題がありそうです。
しばし待つしかないみたいですね。


コウさん
電源対策いいですよねー。
私もそろそろ自作しようかと思っています。他の電流を食う機器でも使えるようにLM723のキットを使おうかなと計画しています。


Re: BeagleBone Black(6) 投稿者:コウ 投稿日:2013/09/24(Tue) 19:19 home No.3566

まさまさ様

今回手持ちのトランスで組んだ為、一時側電圧が高すぎなので暫定バージョンとしてます。

LM317で一旦電圧落としていますが、2つのレギュレーター共に熱々で常時電源on出来ません。

このままでは怖くてケースに蓋出来ないのでトランス調達し組み直すつもりです。


Re: BeagleBone Black(6) 投稿者:syu 投稿日:2013/09/28(Sat) 14:02 home No.3567

皆様

emmcから抜き出したarch linuxのrootfsは結局古いものでしたので、最新版で作り直してみました。後ほどアップロードできると思います。

dsdのテストも、より厳しい負荷条件が好ましいと思いますが、FIDELIXさんのサイトに5.6MHz-dffのサンプルが置いてあるのに気付きました。
http://www.fidelix.jp/technology/balance.html" target="_blank">http://www.fidelix.jp/technology/balance.html

下から4行目にリンクのある”5.6MHzオリジナルDFFファイル”(Torna Srrento.dff)はログインなしでもダウンロードできますので、お試しください。
https://skydrive.live.com/?cid=e957a3ce59c390dd&id=E957A3CE59C390DD" target="_blank">https://skydrive.live.com/?cid=e957a3ce59c390dd&id=E957A3CE59C390DD!181&authkey=!ALyQKyBzpXXYQwo

[root@arch-mpd-dsd-sd ~]# uname -a
Linux arch-mpd-dsd-sd 3.8.13-rt9_Fe-00899-g46930b7 #1 SMP PREEMPT Wed Aug 7 01:47:34 JST 2013 armv7l GNU/Linux

[root@arch-mpd-dsd-sd ~]# mpd --version
mpd (MPD: Music Player Daemon) 0.17.5-DSD

以下は、5.6MHz-dff再生中のtopです。

2時間半まで中断なく連続再生できています。引き続きテスト中です。

5.6MHz-dffでは、mpd優先度の設定なしでは頻回にノイズが出ましたが、mpd優先度の設定でノイズは大幅に減り、実用範囲に入りました。

dsd再生は環境による影響が大きく、アップロードするファイルがお役に立つ可能性は低いと思いますが、乗りかかった船ですね(^^;

top - 13:18:29 up 2:31, 1 user, load average: 0.95, 0.83, 0.84
Tasks: 70 total, 1 running, 69 sleeping, 0 stopped, 0 zombie
%Cpu(s): 4.2 us, 19.3 sy, 0.0 ni, 74.5 id, 0.0 wa, 0.0 hi, 1.9 si, 0.0 st
KiB Mem: 513420 total, 165288 used, 348132 free, 7748 buffers
KiB Swap: 0 total, 0 used, 0 free, 95608 cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
64 root -56 0 0 0 0 S 16.2 0.0 23:33.56 irq/35-musb+
224 root -54 0 61144 58288 13920 S 5.6 11.4 8:00.71 mpd
262 root -54 0 0 0 0 S 4.3 0.0 5:57.13 cifsd
76 root -54 0 0 0 0 S 4.0 0.0 6:02.09 irq/57-4a10+
17 root 20 0 0 0 0 S 0.3 0.0 0:12.18 kworker/0:1
77 root -51 0 0 0 0 S 0.3 0.0 0:49.92 irq/58-4a10+
414 root 20 0 4612 1280 1008 R 0.3 0.2 0:44.87 top
1 root 20 0 4824 2800 1900 S 0.0 0.5 0:01.91 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 0:05.35 ksoftirqd/0
5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H
7 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/u:0H


[root@arch-mpd-dsd-sd ~]# nano /usr/local/sbin/rtset

#!/bin/sh
chrt -f -p 55 `pgrep irq/35-musb-hdr`
chrt -f -p 53 `pgrep irq/57-4a100000`
sleep 10
chrt -f -p 53 `pgrep cifsd`
chrt -f -p 53 `pgrep mpd`

追記 

5.6MHz-dffでの連続再生、6時間を越えましたので、試験終了してtar.gzファイルの作成(証拠隠滅)に取りかかります。

時間経過とともに負荷が少しずつ低下しているようです。

5.6MHz-dff再生中のtop

top - 17:05:11 up 6:18, 1 user, load average: 0.92, 0.91, 0.91
Tasks: 70 total, 1 running, 69 sleeping, 0 stopped, 0 zombie
%Cpu(s): 4.6 us, 17.8 sy, 0.0 ni, 75.3 id, 0.0 wa, 0.0 hi, 2.3 si, 0.0 st
KiB Mem: 513420 total, 198644 used, 314776 free, 9240 buffers
KiB Swap: 0 total, 0 used, 0 free, 127296 cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
64 root -56 0 0 0 0 S 16.2 0.0 60:12.14 irq/35-musb+
224 root -54 0 61144 58288 13920 S 5.0 11.4 20:31.36 mpd
76 root -54 0 0 0 0 S 4.0 0.0 15:26.57 irq/57-4a10+
262 root -54 0 0 0 0 S 3.6 0.0 15:14.18 cifsd
77 root -51 0 0 0 0 S 0.7 0.0 2:08.00 irq/58-4a10+
424 root 20 0 4612 1276 1008 R 0.7 0.2 0:06.66 top
422 root 20 0 0 0 0 S 0.3 0.0 0:06.50 kworker/0:0
1 root 20 0 4824 2832 1916 S 0.0 0.6 0:01.92 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 0:12.57 ksoftirqd/0
5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H
7 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/u:0H


Re: BeagleBone Black(6) 投稿者:syu 投稿日:2013/09/28(Sat) 19:52 home No.3569

皆様

私の環境限定ですが、5.6MHz-dsdまで連続再生可能なarch linuxのrootfsを公開します。

rtoptパッチをあてたmpd-dsdも最新版を取得し作成しました。

https://docs.google.com/file/d/0B1n2sZGxAleMSTdfNkh4ajkxcEU/edit?usp=sharing" target="_blank">https://docs.google.com/file/d/0B1n2sZGxAleMSTdfNkh4ajkxcEU/edit?usp=sharing

以下、rootで作業します。

# sudo su

# mkdir arch-mpd-dsd

適当にディレクトリを作成し、そこにダウンロードしてください。

# cd arch-mpd-dsd

ディレクトリに移動したら、下のページのinstallタブに書いてある手順で6番目まで、書いてある通りに進めます。

http://archlinuxarm.org/platforms/armv7/ti/beaglebone-black" target="_blank">http://archlinuxarm.org/platforms/armv7/ti/beaglebone-black

7番目は以下のように進めてください。

# mkdir root
# mount /dev/sdX2 root
# tar -xvf arch-mpd-dsd.tar.gz -C root


マウントポイントに入ります。

# cd root

fstabの編集

# nano etc/fstab

パスワードなど、環境に合わせてください。

固定IPの変更(eth0の場合)

# nano etc/conf.d/network@eth0

address=192.168.11.7
netmask=24
broadcast=192.168.11.255
gateway=192.168.11.1

環境に合わせ書き換え。

# nano etc/systemd/system/network@eth0.service

編集が必要な場合があります。

# nano root/.mpdconf

必要なら編集してください。

umountします。

# umount root

sdカードを取り出して、bbbにマウント。
初回だけブートスイッチを3秒程、押し続けたまま起動します。

rootのパスワードはbbblackです。

パスワードを変更してください。

# passwd

1回リブートした方がいいでしょう。

# rebt

2回目からはそのまま電源ONでsdカードから起動できます。
起動後5分間ほど放置してから、演奏開始が良いと思います。

mpdはarch linuxの流儀に従っていますので、設定ファイルは/root/.mpdconfです。
その他は/root/.mpd/にありますが、残渣が残っているかもしれません。
ご笑覧くださってもかまいませんが、口外は禁止します(笑

musicフォルダは/root/musicです。

selbootは使えます。selmpdはありません。

systemctl rebootの代わりにrebtコマンドを使用すると迅速にrebootできると思います。

poffコマンドで迅速なsystemctl poweroffができます。


皆様、ご試用よろしく。


Re: BeagleBone Black(6) 投稿者:まさまさ 投稿日:2013/09/29(Sun) 02:00 home No.3570

syu さん

どうもありがとうございました m(_ _)m

さっそくやってみました!

[root@arch-mpd-dsd-sd ~]# uname -a
Linux arch-mpd-dsd-sd 3.8.13-rt9_Fe-00899-g46930b7 #1 SMP PREEMPT Wed Aug 7 01:47:34 JST 2013 armv7l GNU/Linux

なんか音がしっとりと落ち着いたような感じがします。

ですが、残念ながらパチ音は直らないみたいです。
14.4K, 96K, 192K FLAC 全てで出てしまいました。
ただし、192K FLAC では頻度が少し少なくなった気がします。

私の場合には、0731pe版で当面過ごすのが良さそうです。


Re: BeagleBone Black(6) 投稿者:yo 投稿日:2013/09/29(Sun) 17:40 home No.3571

syuさん

BBB Archアップロードありがとうございました。以前公開されたものとは多少変更されているようなので、期待して試してみました。
残念ながら結果はNGです。僕の環境ではDSD再生で再生中断、ハング共に発生します。ただ発生頻度はかなり改善されています。旧イメージだと10分くらいで発生していたのですが、1時間(SACD一枚)聴いて起きることがあるかどうかというところですね。問題が発生しないこともあるので、確認に時間がかかりました。

topの結果です。
top - 17:25:15 up 4:54, 2 users, load average: 0.15, 0.20, 0.22
Threads: 78 total, 1 running, 77 sleeping, 0 stopped, 0 zombie
%Cpu(s): 1.9 us, 10.5 sy, 0.0 ni, 86.4 id, 0.0 wa, 0.0 hi, 1.2 si, 0.0 st
KiB Mem: 513408 total, 372648 used, 140760 free, 2168 buffers
KiB Swap: 0 total, 0 used, 0 free, 307016 cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
64 root -56 0 0 0 0 S 14.4 0.0 33:03.52 irq/35-musb-hdr
76 root -54 0 0 0 0 S 1.6 0.0 4:01.24 irq/57-4a100000
282 root 20 0 0 0 0 S 1.6 0.0 3:34.13 cifsd
293 root -48 0 60760 57976 13920 S 1.3 11.3 3:05.22 mpd
469 root 20 0 4616 1336 1008 R 1.0 0.3 0:00.07 top
77 root -51 0 0 0 0 S 0.3 0.0 0:53.88 irq/58-4a100000
291 root -48 0 60760 57976 13920 S 0.3 11.3 1:02.96 mpd
292 root -47 0 60760 57976 13920 S 0.3 11.3 1:42.53 mpd
459 root 20 0 10444 3420 2748 S 0.3 0.7 0:07.62 sshd
1 root 20 0 4828 2800 1884 S 0.0 0.5 0:01.97 systemd

cpu負荷が10%から15%の間になっています。以前は20%位の値だったので、多少減っていますね。多分このあたりが発生頻度を低下させているのだと思います。
旧イメージと新イメージでネットワークの設定が変わっているようですが(固定アドレス)、これが原因ですかね。
また、topの結果はsyuさんの環境より僕の環境の方が良い(cpu負荷、ロードアベレージなど)のに、トラブルは僕のところでしか発生しないというのが不思議ですね。

音は今回のイメージの方が良いようです。


Re: BeagleBone Black(6) 投稿者:yo 投稿日:2013/09/29(Sun) 20:05 home No.3572

直前のメッセージを書き込むちょっと前に、リピートモードにして連続再生していますが、3時間位、止まりませんね。一体どうなっているのだろう。このイメージ、エージングされるのですかね。top画面の状況に変化はありません。もう訳がわからん状態ですね。


Re: BeagleBone Black(6) 投稿者:まさまさ 投稿日:2013/09/30(Mon) 01:31 home No.3573

ちょっと気になることがあり、もう一度試してみました。
実は他の方の設定を参考にしていて、fstab の cifs 接続で rsize,wsizeに関しては何も設定していなかったので、rsize=130048,wsize=4096 を追加してみました。

これを設定したところ、0731rt では 44.1K ではパチ音無し、96K, 192K ではパチ音ありますが、発生間隔がかなり長くなりました。

次に syu さんのイメージで同様に試したところ、やはり改善されたのですが、44.1K では若干パチ音ありになりました。

発生間隔ですが、一定間隔ではありませんので、何かのタイミングでCPU負荷がたまたま高くなったときに発生するのかもしれません。

とりあえず、0731rt では使えることがわかりましたので、大収穫です!

でも、syu さんのイメージが一番音が良いので、なんとかしてみたいです。不必要なプロセスなどを止めれば良いのでしょうけど、何を削ってよいやら。。。


Re: BeagleBone Black(6) 投稿者:syu 投稿日:2013/09/30(Mon) 18:50 home No.3574

まさまささん

お試し、ありがとうございます。

パチノイズは、うちでも稀に出ます。

もっとも過酷な5.6MHz-dffの再生に限定してですが、mpd優先度の指定を.mpdconf だけでやったときは、かなり頻回にパチ・・・・・・パチ・・・パチ・・・・・・・・・って感じで、非周期的に頻発しました。

/usr/local/sbin/rtsetに chrt -f -p 53 `pgrep mpd` を書き加えて
# rtset
とやると、ほとんど出なくなりました。

でも、起動する度に5.6MHz-dffでのパチノイズの出方は変化するんですよね。運が悪いと、mpdの優先度を指定しても、5.6MHz-dffに限ってですが、パチパチうるさいことがある。リブートすると多くはおさまります。

困ったことに、cpu負荷の大小とは相関ないみたいです。

sdカードに音楽ファイルをコピーして、そこから再生すると、どうなるでしょう。

# mkdir /root/sd-music
# cd /root/music
とやってから、適当な音楽ファイルを選び、それを/root/sd-musicにコ ピー
# cp <music.wav> /root/sd-music
mpdconfで ~/sd- music に書き換えて
# systemctl daemon-reload
# systemctl restart mpd

これでネットワークは関係なくなるはずですが、それでもパチ ノイズは出るでしょうか。

実は、私の環境でこれをやってみましたが、5.6MHz-dffを再生させると、数分で演奏停止し、同時にPC側のGMPCが落ちます。ttyはこの段階では生 きていますが、エラーメッセージは出ません。コマンドを入れると1回だけ実行しますが、そのまま落ちます。

私の環境では、LANから読み込むよりsdカードからの方が不利なんです。何が起きてるのかな。


Re: BeagleBone Black(6) 投稿者:syu 投稿日:2013/09/30(Mon) 19:02 home No.3575

yoさん、お試しありがとうございます。

アップロードしたファイルは最新版をそのままインストールし、pacman -Syuした後、固定IPにし、rtsetを起動させ、mpd-dsd-rtoptを新しくコンパイルしただけのものです。特殊な魔法はかけていません。

>エージングされるのですかね。

書きませんでしたが、実はうちでも、インストールした最初だけ、dsdが数分~10分ぐらいで止まります。
”一時停止 > 再生”でやり過ごすと、その後は停止しなくなる。

理由は不明ですが、sdカードをミュージックディレクトリに指定するとすぐ落ちたりしますので、LANのどこかが学習しているのかなと、ボンヤリ考えてます。

cpu負荷は、起動する度に変動します。今のところランダムに運次第です。演奏開始した初期の値が高いと、ずっとそのままです。topで表示される負荷の大小と音は無相関な印象ですが、音の良し悪しも、cpu負荷とは無関係に、起動する度に変化しているような印象です。

iriverのサンプルdffでScarlattiは曲の終わりでクラッシュしてましたが、今度のrootfsではクラッシュしません。曲の終わりで音が消え、プログレスバーは次の曲に移動。”一時停止 > 再生”で音が復活します。e-onkyoの2Lレーベルの曲で発生するのと同じ現象です。

まあ、当分は、手に負えませんね(^^;


Re: BeagleBone Black(6) 投稿者:まさまさ 投稿日:2013/09/30(Mon) 22:47 home No.3576

syu さん

色々と情報をありがとうございます。

SD-Card にコピーしてやってみましたが、syu さんと同じで、
SD-Card の方がパチノイズが良く出るようになってしまいました。

ちょっと調べてみたら、どうもバグっぽいです。
https://groups.google.com/forum/#" target="_blank">https://groups.google.com/forum/#!topic/beagleboard/fOGeXCub9OY

チップの設定を間違っているらしくスピードが出ないみたいです。どうやらパッチもあるみたいです(パッと見で、英語ちゃんと読んでませんが、なんとなくそんな感じみたいです)。。。


もしかして、このパッチで直りませんかね?例えば何かログをSDに書き込もうとして遅いので、処理が待たされ、結果としてパチノイズ発生やDSDが止まってしまうとか。。。
(当たってないだろうなぁ。。。笑)

ちなみに、今は rsize=512000 にして聞いていますが、昨晩と比較してそんなにパチノイズが発生せず、気にならないレベルになってきました。
当面これで様子見してみます♪


Re: BeagleBone Black(6) 投稿者:m 投稿日:2013/09/30(Mon) 23:20 home No.3577

syuさん

BBB Archアップロードありがとうございました。私も試してみました。
私の環境でも再現性が今一つで報告遅くなりましたが、
DSDは最初数分でstopし、再起動後は数時間大丈夫な場合が多いので、syuさんyoさんと概ね一緒のようです。

>LANのどこかが学習しているのかなと、ボンヤリ考えてます。
Hubでしょうか?

音は落ち着いたやさしい感じですね。
私の環境と音源では 0731rt の方が好みですが、
上流でこれだけ変わるのも面白いですね。


Re: BeagleBone Black(6) 投稿者:syu 投稿日:2013/10/01(Tue) 00:34 home No.3578

まさまささん

情報ありがとうございます。

パッチ当てはよくわかりませんが、同じrootfsをemmcにも入れていますので、そちらで再生してみました。sdカードは入っていません。

しかし、emmc上のsd-musicディレクトリに置いた5.6MHz-dffを再生すると、数秒で落ちました。落ち方がsdカードの時より早い印象。

このときの状態

[root@emmc-arch-mpd-dsd ~]# fdisk -l

Disk /dev/mmcblk0: 1920 MB, 1920991232 bytes, 3751936 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x4616c03e

Device Boot Start End Blocks Id System
/dev/mmcblk0p1 * 2048 133119 65536 e W95 FAT16 (LBA)
/dev/mmcblk0p2 133120 3751935 1809408 83 Linux

Disk /dev/mmcblk0boot1: 1 MB, 1048576 bytes, 2048 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mmcblk0boot0: 1 MB, 1048576 bytes, 2048 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

[root@emmc-arch-mpd-dsd ~]# hdparm -tT /dev/mmcblk0

/dev/mmcblk0:
Timing cached reads: 530 MB in 2.01 seconds = 264.28 MB/sec
Timing buffered disk reads: 68 MB in 3.14 seconds = 21.64 MB/sec

emmcなら、速度は問題なさそうですが、不必要な割り込みを生じるバグなど、ありそうですね。誰かが解決してくれるまで待つしかなさそう。

当面、emmcにインストールしてLAN経由で音楽聴くのが、気分的にマシかもしれません。

sdカードからemmcにtarするときは、事前に
# selboot 3120ARCH
とやって通常カーネルに戻しておいた方が、問題が起きにくいと思います。


Re: BeagleBone Black(6) 投稿者:syu 投稿日:2013/10/01(Tue) 00:53 home No.3579

mさん、ありがとうございます。

>私の環境と音源では 0731rt の方が好み

実はまだ試していません(^^;;; あとで比較してみますね。


Re: BeagleBone Black(6) 投稿者:まさまさ 投稿日:2013/10/01(Tue) 00:59 home No.3580

syu さん

やっぱり、当たってませんでしたね(苦笑)

一からコンパイルするのではなさそうだったので、パッチあてにチャレンジしてみました。

# cd /root
# pacman -S dtc
;省略
Packages (1): dtc-v1.4.0-1
;省略
# cp /boot/dtbs/am335x-boneblack.dtb /boot/dtbs/am335x-boneblack.dtb.org
(とりあえず怖いのでバックアップをとっておきました)
# dtc -I dtb -O dts -o test.dts /boot/dtbs/am335x-boneblack.dtb
# vi test.dts

mmc@48060000 をサーチ
mmc@48060000 {
compatible = "ti,omap3-hsmmc";
ti,hwmods = "mmc1";
; 少し省略
vmmc-supply = <0xb>;
bus-width = <0x4>; <-- この行を追加します
ti,vcc-aux-disable-is-sleep;
linux,phandle = <0x28>;
phandle = <0x28>;
};

save して終了します。

# dtc -I dts -O dtb -o /boot/dtbs/am335x-boneblack.dtb test.dts
# reboot

で、syu さんお察しの通り、直りません。。。
気持ち、パチノイズが少なくなったかな?くらいでした。

残念!


Re: BeagleBone Black(6) 投稿者:syu 投稿日:2013/10/01(Tue) 20:42 home No.3582

アップグレードで入るbbb/archの最新カーネルは、いきなり3.12.0-rc2-1-ARCHになっていますが、このカーネルでは bus-width = <0x4>; がちゃんと記述されていました。

3.12-rtが出ると良いですね。


Re: BeagleBone Black(6) 投稿者:yo 投稿日:2013/10/01(Tue) 21:03 home No.3583

syuさん

ご返事ありがとうございます。肝心な部分はいまだ闇の中ですが、大分いろいろなことが分かってきましたかね。

> cpu負荷は、起動する度に変動します。

僕のところは文字通りエージングされます。長い時間再生を続けていると良くなります。
ただし、cuboxと異なり今のところ10%以下になることはありません。再生中で試聴している時は、nexus7 ssh端末のtop画面とにらめっこしながら聴いていますが、再生中断はcpu負荷が大きくなった時に発生しています。
インスール直後のまったくエージングされていない時に負荷は極端(50%)に高くなるのですが、これはarch環境の初期化のプロセスがいろいろ動いているためのように見えます(例えばmandbなんかが動いています)。
その後、安定して10%台前半に収まるのですが、時々数十秒のレベルで50%位に跳ね上がるのですよね。この理由がよく分かりません。この状態で再生中断せず連続演奏できるとだんだんcpu負荷が跳ね上がる頻度が低くなり、1時間以上再生続行できている場合は10%台で安定して再生が続きます。

rtカーネルの割り込み処理関連のプロセス管理に起因する障害じゃないかと思います。何か問題があるのでしょうね。lanだと起きにくくなるというのが解せないのですが。


Re: BeagleBone Black(6) 投稿者:syu 投稿日:2013/10/01(Tue) 23:53 home No.3584

yoさん

topでの最も目立つ差は、Threadsの項目でしょうか。

yoさんのNo.3571では

top - 17:25:15 up 4:54, 2 users, load average: 0.15, 0.20, 0.22
Threads: 78 total, 1 running, 77 sleeping, 0 stopped, 0 zombie
%Cpu(s): 1.9 us, 10.5 sy, 0.0 ni, 86.4 id, 0.0 wa, 0.0 hi, 1.2 si, 0.0 st


私の場合(emmcから起動直後2.8MHz-dff)

top - 23:03:12 up 1 min, 1 user, load average: 0.19, 0.10, 0.04
Tasks: 71 total, 1 running, 70 sleeping, 0 stopped, 0 zombie
%Cpu(s): 2.7 us, 10.8 sy, 0.0 ni, 85.3 id, 0.0 wa, 0.0 hi, 1.2 si, 0.0 st

dff連続演奏5分経過後

top - 23:07:11 up 5 min, 1 user, load average: 0.17, 0.18, 0.09
Tasks: 69 total, 1 running, 68 sleeping, 0 stopped, 0 zombie
%Cpu(s): 2.8 us, 8.7 sy, 0.0 ni, 87.0 id, 0.0 wa, 0.0 hi, 1.6 si, 0.0 st

私の環境では5分過ぎぐらいで、総稼動プロセス数が71から69 に減りますが、yoさんのデータでは、5時間近くでも78です。

同じイメージのはずなのに、私の場合と総稼動プロセス数が9も違う。この原因は何ですかね? 何かプロセスを追加されたのでなければ、外来の原因でプロセスが増えてる可能性ですね。LANですかねえ。何らかの外来因子でプロセス数が増え、突発的なcpu負荷の増加を生じてdsd再生が中断するということなんでしょうね。


Re: BeagleBone Black(6) 投稿者:yo 投稿日:2013/10/02(Wed) 20:55 No.3585

syuさん

Threads部分の差はsyuさんと僕の環境差だと思います。

> 私の環境では5分過ぎぐらいで、総稼動プロセス数が71から69 に減りますが、yoさんのデータでは、5時間近くでも78です。

僕の環境でも多少減ります。「cuboxでsamba」のスレッドでのNo.3563で稼働後2分位のtop画面をペーストしてありますが、82ですので。この時使ったイメージはsyuさんの古いarchでしたが、新しいものでも同じだと思います。ただ、9あるトータルの数のプロセス数の差はご指摘のようにネットワークなどの違いに起因するものだと思います(今回はsyuさんのイメージに手を加えていません)。
この違いがトラブルの発生頻度などの差を引き起こしているのでしょうね。

ちなみに、5時間経過後の今回のtopで 2 usersとなっていますが、これはssh接続をnexus7とパソコンの両方から行っているためで、片方を止めるとプロセスの数が減少します。

あと、このThreads部分で重要なのはload averageで、これは処理待ちプロセスの数を意味しますが(現時点から1分前、5分前、15分前)、この値が大きくなると(確実に待たされるという意味の1.00に近づくと)トラブルが発生します。この値はcpu負荷にある程度依存しますね(cpu負荷が高くなると大きくなりますが、そうでない場合もありますね)。


Re: BeagleBone Black(6) 投稿者:m 投稿日:2013/10/04(Fri) 02:30 home No.3586

yoさん、みなさま

再起動直後からDSD再生を開始し、load average(1カラム目)を試しに15秒毎に記録してみました。
https://docs.google.com/file/d/0B5eFIaI2AU9INEVQS3Y4MFhfOHM/edit?usp=sharing" target="_blank">https://docs.google.com/file/d/0B5eFIaI2AU9INEVQS3Y4MFhfOHM/edit?usp=sharing
syuさんのBBBは"慣らし"済み(でも時々止まります)。
すべて cifs で NAS と繋いでいます。

"top" 画面をずっと眺めていたことは無かったので、結構激しく動いていてビックリです(何してるんだろ?)。
毎回違うのも謎です。
再生 stop と load average の関係ですが、あるような無いような?よく分かりませんが
0731rt の場合、どうも oad average が跳ね上がった数分後に落ちやすい様です。
load average のピークとか、stop 時の top を調べても
これと言った特徴は見つけられず、、といった状況です。

統計的にはまだまだサンプル数が足りないのと
サンプリング間隔はもっと細かくする必要あるかもですね。

(ちなみに、私の環境では5分過ぎぐらいで、総稼動プロセス数が73から71に減ります。)

状況報告でした。


Re: BeagleBone Black(6) 投稿者:yo 投稿日:2013/10/04(Fri) 19:03 home No.3587

mさん

データの公開ありがとうございます。興味深く拝見しました。なるほどなぁという感じです。

サーバのチューニングなどで、load averageは1.0を超えると確実に待たされることになるので、何らかの対応が必要と言われているのですが、やっぱりBBBの成績はあんまり芳しくないですね。debianの成績が悪いは意外でした。またarchで1.0を超えてもなにも起きてなくて、その後、問題のなさそうな0.5以下の状態で発生しているのも面白いですね。さすがにcubox archの3.8.10rt6は安定していますね。これがあるべき姿だと思います。

僕の推測ですが、再生中断や音切れの発生要因はrtカーネルのプロセス制御のバグだと思います。
rtカーネルの場合、割り込みハンドラや処理プロセスは独立してrt優先度に合わせて処理される筈ですが、このコントールに何らかの乱れが発生して、一種のデッドロック状態が起き、再生中断したり、音切れしたりするのではないかと思っています。
mさんのデータを見て思うのは、このデッドロック状態が単純にロードアベレージが起きるのではない。しかし、ロードアベレージが高くなると起きやすくなり、0.5以下で収まる環境であれば、発生しにくいというところですかね。

ところでload averageは次のようなスクリプトを用意しておくと簡単に観察ですますね。

#!/bin/sh

date > loadave.txt
while true
do
cat /proc/loadavg >> loadave.txt
sleep 3s
done

問題はpdfにグラフ化する方法なのですが、mさんはどういう具合にされたのでしょうか。


Re: BeagleBone Black(6) 投稿者:syu 投稿日:2013/10/04(Fri) 20:00 home No.3588

mさん

興味深いデータ、ありがとうございます。

loadの平均値ではなく、サンプリング値そのものを取得するコマンドは存在するのでしょうか。平均を計算するには、適当な間隔でloadの値をサンプリングしているはずなので、何らかの手段で瞬時の値も取得できそうに思うのですが、ググっても判然としません。

maximum load(peak)が観察できると、もっと何かがわかりそうな気がしますね。

# nano /usr/local/sbin/uptm

#!/bin/sh

while true
do
uptime
sleep 1
done
----

# uptm

これで約1秒おきにload average が表示されますが、およそ5秒おきに移動平均を表示するようですね。


Re: BeagleBone Black(6) 投稿者:yo 投稿日:2013/10/04(Fri) 21:31 home No.3589

syuさん

cプログラミングする覚悟があれば、このページの情報は参考になりませんか。
http://d.hatena.ne.jp/naoya/20070518/1179492085" target="_blank">http://d.hatena.ne.jp/naoya/20070518/1179492085

まあ、僕はパスです(^^;;;。


Re: BeagleBone Black(6) 投稿者:m 投稿日:2013/10/04(Fri) 22:16 home No.3590

yoさん

ずっと使うものでもないので、特別なことはしていません(笑)。
今回は load average に影響するプロセスを知りたかったので、
まずは Top を記録
top -b -d 15 > top.log_`date +%y%m%d.%H%M`
less top.log_*** |grep load > load.log
で load average を抽出しました。

Excel から load.log を開いて(区切り文字は "," ":" )グラフ化
PowerPoint に貼り付けコメント記入、pdf化という流れです。


syuさん、yoさん
調べ切れていませんが、DTrace はどうでしょう?
http://en.wikipedia.org/wiki/DTrace" target="_blank">http://en.wikipedia.org/wiki/DTrace
(出来たとしても音は悪くなりそうなので、僕もパスですが(^^;;;)


Re: BeagleBone Black(6) 投稿者:yo 投稿日:2013/10/05(Sat) 17:16 home No.3591

皆様

システムモニタ用のツールを調べてみました。
sysstat(sar)というツールが便利ですね。

pacman -Sy sysstat

でインストールする必要があり、使い方もちょっとややこしいですが、例えば

sar -uq -o data.file 1 600 > /dev/null &
sar -uq -f data.file > data.txt
nano data.txt

で1秒間隔、10分間のcpu負荷とロードアベレージをまとめてみることができます。
使い方はibmとoracleのサイトにありました。
ibm
http://publib.boulder.ibm.com/infocenter/pseries/v5r3/index.jsp?topic=/com.ibm.aix.cmds/doc/aixcmds5/sar.htm" target="_blank">http://publib.boulder.ibm.com/infocenter/pseries/v5r3/index.jsp?topic=/com.ibm.aix.cmds/doc/aixcmds5/sar.htm
oracle
http://docs.oracle.com/cd/E19455-01/806-2718/6jbtrjv3b/" target="_blank">http://docs.oracle.com/cd/E19455-01/806-2718/6jbtrjv3b/


Re: BeagleBone Black(6) 投稿者:syu 投稿日:2013/10/06(Sun) 14:48 home No.3592

皆様

No.3463でtinkerさんに情報をいただいたpatchの件、やり方がわからなかったこともあって、適用しないままになっていました。

https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/commit/?id=c72a0e036f9d80c609e608a723751343f1f5e9fc" target="_blank">https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/commit/?id=c72a0e036f9d80c609e608a723751343f1f5e9fc

このpatchを適用した3.8-rtをコンパイルしてみましたので、zipファイルで公開します。

環境によっては、もしかすると、ノイズや音切れが減る可能性です。増える可能性もなくはありません。module名が長たらしいですが、ご容赦。ご試用、ご批評、よろしく。

https://docs.google.com/file/d/0B1n2sZGxAleMVW14dlVEUFZzV0E/edit?usp=sharing" target="_blank">https://docs.google.com/file/d/0B1n2sZGxAleMVW14dlVEUFZzV0E/edit?usp=sharing

rootで作業してください。

# sudo su

適当なディレクトリで

# unzip 0807.zip

出来たものをsdカードにコピーします。
sdカードのマウントポイントを/archと仮定

# cd 0807
# cp -r 0807rt /arch/build_files/
# cp -r 3.8.13-rt9_Fe_ehci-sched_patched_-00899-gb3db21e-dirty /arch/lib/modules/

# umount /arch

bbbにsdカードを移して起動後selbootします。

# selboot 0807rt

私の環境では、一部のdsd曲の終末で発生していた音切れ現象の発生頻度が減ったような気がします。

追記

Google Driveの設定が変でした。左上隅のアイコンをクリックしてDriveを開くと、そこから0807.zipを落とせると思います。

追記2

zipファイルの作成でミスってましたので一旦削除しました。m(__)m
後ほど再アップロードします。


Re: BeagleBone Black(6) 投稿者:まさまさ 投稿日:2013/10/06(Sun) 23:48 home No.3593

syu さん

いつもどうもありがとうございます!

残念ながら、私の flac (44.1K, 96K, 192K)ではほとんど変化はわかりませんでした。


しかし早く根本原因が判って修正されると良いですよね。

どこかに書き込んだら、コード書いた人が気づいてくれたりしないですかねぇ。。。


Re: BeagleBone Black(6) 投稿者:syu 投稿日:2013/10/07(Mon) 22:24 home No.3595

皆様

zipファイル、容量等が変な気がしたので一度削除しましたが、問題なかったようです。すみません。

新しく作り直したファイルをアップロードしました。
patchを当てた0731rtと0806rtの2種類です。

# tar Jxfv ./0807n.tar.xz
などと解凍したあと、該当ディレクトリにコピーしてください。

0731n.tar.xz
https://docs.google.com/file/d/0B1n2sZGxAleMcnRaV1RSS0M2Q28/edit?usp=sharing" target="_blank">https://docs.google.com/file/d/0B1n2sZGxAleMcnRaV1RSS0M2Q28/edit?usp=sharing

0807n.tar.xz
https://docs.google.com/file/d/0B1n2sZGxAleMbU01SkRlVWNDOU0/edit?usp=sharing" target="_blank">https://docs.google.com/file/d/0B1n2sZGxAleMbU01SkRlVWNDOU0/edit?usp=sharing

まさまささん

ご試用、ありがとうございます。やはりだめでしたか。残念でした。

>コード書いた人が気づいてくれたり

検索してみたら、ロボットやってる方が、BBBの3.8-rtは挙動がおかしいと、RT-Preemptカーネルの評価をしておられるのを発見しました。

http://blog.livedoor.jp/k_yon/archives/52499525.html" target="_blank">http://blog.livedoor.jp/k_yon/archives/52499525.html

騒ぎが伝わって、何とかなると良いですね。


Re: BeagleBone Black(6) 投稿者:yo 投稿日:2013/10/08(Tue) 21:32 home No.3598

このスレッド、長くなったので、新しいスレッドに移行します。新スレッドのタイトルは「BeagleBone Black(7)」です(最長不倒ですね)。



mail

- YY-BOARD -