Oh!Super164 取り留めのない日記のような

2025/2/16 日曜日

ブレークポイントで止まらない

Filed under: PC,備忘録 — admin @ 17:21:40

随分悩む、、、同じ症状で悩む人のサイトを発見
xdebugが”host.docker.internal”を引き当てられないらしく、”extra_hosts”を指定すると動いた

FROM php:8.2-apache

RUN pecl install xdebug && \
    docker-php-ext-enable xdebug

RUN touch /var/log/xdebug.log && chmod a+w /var/log/xdebug.log
services:
  web:
    build: ./
    extra_hosts:
      - "host.docker.internal:192.168.10.180"
    volumes:
      - ./php/php.ini:/usr/local/etc/php/php.ini
      - ./src:/var/www/html
    ports:
      - 8080:80
[xdebug]
xdebug.client_host = host.docker.internal
xdebug.mode = debug
xdebug.start_with_request = yes
xdebug.discover_client_host = 0
xdebug.remote_handler = "dbgp"
xdebug.client_port = 9003
xdebug.log="/var/log/xdebug.log"
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Listen for Xdebug",
            "type": "php",
            "request": "launch",
            "port": 9003,
            "pathMappings": {
               "/var/www/html": "${workspaceRoot}/src"
             }
         },

dockerでsystemctlを使う方法

Filed under: プログラミング,備忘録 — admin @ 17:01:54

PID=1が”init”になるようにする

FROM php:8.2-apache
COPY src/ /var/www/html/
RUN apt-get update
RUN apt-get  -y upgrade
RUN apt-get -y install \
        init \
        systemd \
        git \
        zip \
services:
  app:
    build:
      context: "."
    privileged: true
    command: /sbin/init
    ports:
      - 8080:80
    volumes:
      - ./src:/var/www/html
      - ./php/php.ini:/usr/local/etc/php/php.ini

2025/2/12 水曜日

gcc 定義済みマクロ (pre-defined macro) 確認方法

Filed under: プログラミング,備忘録 — pecos @ 16:06:32
$ echo | gcc -dM -E -

2025/2/10 月曜日

寒波

Filed under: 生活 — pecos @ 0:14:46

土曜は最高気温が5℃未満、日曜の最低気温は-4.4℃
雪は積りはしなかったが粉雪が風で舞い、あられまで降って車にガンガン当たり冷え切っていたんだと実感する。寒いのでストーブという物理火力で暖をとる。遠赤外線の効果もあるのかエアコンに比べて断然暖かい。そういや子供の頃の冬ってこんな感じだったな、、、裏の用水は分厚い氷が張って、霜柱をザクザク踏みながら通学したもんだ。
これまでが暖冬過ぎたのかも

2025/2/8 土曜日

無限レジスタ

Filed under: プログラミング — admin @ 0:47:28

AIが勝手にコードを書いてくれる昨今、、、
gasでx64のアセンブラを使ってみる。gasは既定がAT&T記法なのだが、ちゃんとIntel記法も使える。前者はレジスタに”%”付けたり、オペランドの順序が逆だったりとMASMあがりには訳わかめ。x64では汎用レジスタが増えて、”r8″~”r15″と実に分かり易い名前になっている。加えて32bitモードではxmm0~7までだったMMXレジスタもxmm15まで増えている。かつて、AX/BX/CX/DX/DI/SIしか無かった16/32bit時代から比べると天国である。レジスタが増えたので、gccやvc++のABIも可能な限りレジスタ渡しになっており、少々の引数ならスタックすら使わない。
いつの間にかモダンになってたんだな>x86

2025/2/1 土曜日

ARM NEON

Filed under: PC — pecos @ 23:44:55

ARMのSIMD命令セット
我が家のロートル、RaspberryPi2にも搭載されている。この手の命令はgasやinline asm構文を使わなくてもCの関数として用意されている場合があるのだが、gccにもある。128bitレジスタが使えるので、実験的に実装。ちゃんとNEON命令にコンパイルされるのか見てみると見事に変換されている。
速くなったんだろうか?、、、心の問題かもしれないw

2025/1/30 木曜日

raspbian11 hdmi soundの怪

Filed under: PC,備忘録 — pecos @ 21:32:52

Raspbian11で音が出ない、、、

$ aplay /usr/share/sounds/alsa/Front_Center.wav
再生中 WAVE 'Front_Center.wav' : Signed 16 bit Little Endian, レート 48000 Hz, モノラル
aplay: set_params:1349: チャネル数が使用不可能

hdmiから音を出すのはvc4hcmi(MAI PCM i2s-hifi-0)だと思うのだが、raspbian10とドライバ名が異なる

$ cat /proc/asound/pcm
00-00: bcm2835 Headphones : bcm2835 Headphones : playback 8
01-00: MAI PCM i2s-hifi-0 : MAI PCM i2s-hifi-0 : playback 1
$ aplay -l
**** ハードウェアデバイス PLAYBACK のリスト ****
カード 0: Headphones [bcm2835 Headphones], デバイス 0: bcm2835 Headphones [bcm2835 Headphones]
  サブデバイス: 8/8
  サブデバイス #0: subdevice #0
   :
   中略
   :
  サブデバイス #7: subdevice #7
カード 1: vc4hdmi [vc4-hdmi], デバイス 0: MAI PCM i2s-hifi-0 [MAI PCM i2s-hifi-0]
  サブデバイス: 1/1
  サブデバイス #0: subdevice #0
$ aplay -L
null
    Discard all samples (playback) or generate zero samples (capture)
default
output
hw:CARD=Headphones,DEV=0
   :
   中略
   :
    Hardware device with all software conversions
sysdefault:CARD=vc4hdmi
    vc4-hdmi, MAI PCM i2s-hifi-0
    Default Audio Device
hdmi:CARD=vc4hdmi,DEV=0
    vc4-hdmi, MAI PCM i2s-hifi-0
    HDMI Audio Output
dmix:CARD=vc4hdmi,DEV=0
    vc4-hdmi, MAI PCM i2s-hifi-0
    Direct sample mixing device

で、hdmiで鳴らしてもダメ

$ aplay -D hdmi:CARD=vc4hdmi,DEV=0 Front_Center.wav
再生中 WAVE 'Front_Center.wav' : Signed 16 bit Little Endian, レート 48000 Hz, モノラル
aplay: set_params:1349: チャネル数が使用不可能

そしてsysdefaultだと鳴る

$ aplay -D sysdefault:CARD=vc4hdmi Front_Center.wav
再生中 WAVE 'Front_Center.wav' : Signed 16 bit Little Endian, レート 48000 Hz, モノラル

2025/1/20 月曜日

自由研究

Filed under: PC — pecos @ 1:38:06

ふと、MMXの記事を見かける
今はSSEやAVXとか呼ばれているらしい。MMXが初登場した大昔に少しいじった覚えはあるが、知らない内に着々と進化していたようだ。MMXは64bitのMM0-7レジスタや拡張命令で構成されていたが、今では128/256/512bitのXMM/YMM/ZMMレジスタとより多くの拡張命令があるらしい。折角なので、ちょっと組み込んでみる。整数モードで簡単な事しかやらないので大した事はしていないが、VC2019ともなればMASMも標準で使えて苦労なしだ。ちょっと不思議な現象で悩まされるが、多分、MMレジスタを使うと浮動小数点レジスタと共有しているので干渉するようだ。XMM指定にすると直るからきっとそうなんだろう。メインマシンでは動作したが、我が家最古参の初代ThinkPad X1では動作しなかった。SSE4.1非対応なんだろう。SSE2レベルに落とすと動作した。パフォーマンスが上がったかどうか体感的にはまったくわからない。
今時、アセンブラなんて使うこと無いなw

2025/1/1 水曜日

謹賀新年 2025

Filed under: 生活 — pecos @ 22:12:06

あけましておめでとうございます
今年も良い年でありますように

近所の神社に初詣。午前中は天気にも恵まれ人出も多く賑わっていた。
初詣

Close
初詣

2024/12/31 火曜日

大晦日

Filed under: 生活 — pecos @ 20:41:13

あっという間に大晦日
年々、月日が経つのが加速的に早く感じる、、、

« Newer PostsOlder Posts »

Powered by WordPress