トップ «前10日分 最新 次10日分» 追記

はじめてのにき

ここの位置付け

2004|11|
2005|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|
2021|01|02|03|04|05|06|07|08|09|10|11|12|
2022|01|02|03|04|05|06|07|08|09|10|11|12|
2023|01|02|03|04|05|06|07|08|09|10|11|12|
2024|01|02|03|04|

ToDo:


2016-01-13

_ リセットボタン

http://mubou.seesaa.net/article/432460939.html

まあ UI が進化したのと起動が遅くなったのとで、ゲームの再起動はゲーム内でやるようになったというのがあり。

てか PS1 PS2 てハードウェアリセットボタンついてた??とか思って、画像検索したらついてた。すごい押した記憶ない

PS1 の絵描けて言われればこういうの描く。で、これリセットボタン忘れてるんだけど、全く違和感無いしリセットボタン描いたら逆に違和感ある気がする。使わないものって記憶に残らないんだなあ

ryoku160113115835.gif

(12:23)

_ 速度

https://twitter.com/kmizu/status/687232554001235969

ポジショントークです

色んな速度があるからなあという話。大雑把に言って

  • 1. スループットが重要なもの
  • 2. レイテンシが重要なもの
  • 3. 書いてる時の速度が重要なもの(ちょっとした問題の修正も含む、いわゆるイテレーション速度)
  • 4. 問題を解決する速度が重要なもの(運用してる間に起きた問題の修正、しょうもない typo とかは含まない…とする)

なんてのがあると思う。 3 と 4 は規模によって結構変わる数字。えんどうさんは Ruby は 3 (や 4)が重要な言語だという観点で、 1, 2 のためにそっちを犠牲にしないで欲しい、的なスタンスなんだと思う。僕も賛成する…が rails の人たちなんかは少し違うバランス感覚を持つだろう

1 が効いてくるなら C/C++ と JVM 以外に解が無いことが多いと思う。それとスクリプト言語で書いてもたいして楽にならないケースが多いように思う。というわけで、 1 は Ruby でやろうとしないのが懸命だと思うけど、まあ言語のベンチマークはおおむねこれを測ってるケースが多い…と思う。とはいえ実行頻度が少なければ、 C/C++ なら1時間ですむけど、 Ruby なら5時間…みたいなタスクでプロジェクトによって Ruby を採用するのもわからんでもない…が個人的には基本イヤだ。

2 はこう、 1 よりは制限が弱くて、 UX 的に問題になるまではどの言語でもいいところではある。 Python Ruby で書いてる大規模なフロントエンドなんて、まあいくらでもあるだろう…とは思う。がなあ、 1, 2 が気になりうるならそもそも Ruby 使うな感はある(このへんポジショントーク)。レイテンシは問題が起きるたびに修正しなきゃなんで、最初から速いので書いときゃ問題が起きる頻度が減るんで。

3 はおおむねスクリプト言語が速い…が今は知らんが昔の rakudo で見てる限り Perl6 の 3 は速くない。 4 は printf で解決するような問題だと 3 の速さが重要になるけど、ややこしいデバッグとかするなら JVM とかが良くなる…と思う。個人的な感覚では JVM は速度に関する問題が起きた時、 4 の解決は C/C++ がツールの充実と GC の不在により、最速になりうる…と思う(このへんもポジショントーク)。

4 はこう、割と 1,2 の速度と 3 の速度が混じる領分で、複雑になればなるほど 1,2 の速度が問題の解決にかかる速度に依存しがちで、簡単なものだと 3 の速度てかイテレーション速度に依存しがち…な気がする。ただそれ以上にツールの充実とかが重要になってきて、言語機能そのものとかより、エコシステムが影響してくる分野だと思う。

1 考える時は C/C++ で良くて、 2 は C/C++ かひょっとしたら JVM とか GC つきの言語もアリで、 3 はスクリプト言語、みたいな使いわけになってる気がする。 4 は色々あるけど、結局エコシステム的に、慣れたせいもあるけど、 C/C++ (+gdb +valgrind +etc.) が素晴らしいんだよな。

でー…僕は 1 と 4 最重視でサクッと書く時は 3 重視、みたいな感覚で、それでなんか C/C++ か Ruby (か会社で書く時はいやだなあと思いつつ Python) しか使わなくなってしまっている。のでえんどうさんの言う https://twitter.com/mametter/status/687227476548833280 は強く賛同するんだけど

2 ぽいことする時は隙があれば Go とか JVM 系言語使ってもいいと思うんだけど、最近そういうのやってないんだよな。あと Go はともかく JVM 系はイテレーション時間かかりがちだよな色々(古い記憶に基くポジション)

で Rails の人てのは 2 なんだろうな

なんていうかスクリプト言語の人とか最新言語好きな人は 3 によりすぎてると思うんだよな基本的に。まあイテレーション速度は重要ですがね。 C/C++ でもコンパイル結果わかるまでは 1 秒あれば普通のプロジェクトなら可能だしな(Chromiumは普通Androidは異常という世界観)。書く速度の方はなあ。1ヶ月くらい1万行越えるコードベースいじってると、アセンブリとかでなければ生産性たいして変わんなくなる気がしてるんだよな。脳の速度が律速する

(22:13)


2016-01-11

_ メガネ

右 S-8.00 左 S-7.50 C+0.50 S-7.00 C-0.50*

と書いてある。意味は調べてない

(23:29)


2016-01-07

_ ハーモニー

も読んだんだった。ついでに映画も。

映画のオチは「あーなるほどこういう意味だったんだ」と思ったけど、まあ普通に映画で勝手に解釈したぽい。映画の方がわかりやすくていいんじゃね、原作者墓下で文句言ってそうだけど。

内容はまあ、意外とストレートにわかりやすい、みんな良い人になりすぎた理想郷は人間くささが消えてつまらんよ系の。類似ストーリーとしては斑鳩を最初に思い出す。それはいいし、素直に先が気になったんだけど、なんか途中の展開が全体的にこうちょと違和感ある感もあった。もやっと

(01:38)


2016-01-04

_ 読んだ本

  • 論考: ウィトゲンシュタイン。だいたい読んだ。哲学をずいぶん狭い世界に勝手に限定して、「これで哲学完成!もう哲学者のやることは無いっ」てのはちょっとひどいんじゃないかとか思った。哲学屋の友人に聞いてみたところそういう面もあるかもね次のやつ読んだらということだった。でもこういうのも一冊読むのは結構だるいな。
  • 心にナイフをしのばせて: 少年犯罪の被害者側の家族が悲惨な生活、加害者本人は弁護士になって順風満帆な人生、ていうやつ。少年法とか被害者加害者人権てやつは難しいなあと思う。基本的には加害者には死を!みたいなのには賛成できないけど、これ読むと被害者悲惨すぎやろ感強いので一定の保証があっていい気がする。気休めみたいなもんかもだけど
  • 僕はやってない: 筋弛緩剤点滴事件の容疑者が冤罪と主張するというやつ。今は無期懲役確定で再審請求してる感じぽい。これ読むと、あっこの人本当に冤罪だなって思う
  • 真実のカルテ: 筋弛緩剤点滴事件を警察に届けた病院の人たちの主張。これ読むと、あっあの人やっぱり犯人だったんだって思う。ありえそうな正解のパターンは 1. 実際殺してた 2. 冤罪でかつこの病院が医療事故をゴマかすための陰謀 3. 冤罪だが病院側は本当に殺人だと信じている、の3つか。3つ目がクズ人間がいないという意味では良いのだけど、筋弛緩剤無くなったのとかヘンすぎるので、1か2が現実的なんだろうな。真実のカルテの方、警察が逮捕した時点で「やはり事実であったか」と思った、とか書いてあるんだけど、これ人狼的には黒要素とか思いながら読んでた。僕はやってない側は黒要素無いかなと思うけど、すごい嘘つきてのはいるもんだから1もありえるとも
  • 東大駒場寮物語: なんかうまいことまとめてるなと。身贔屓かもしれないけど。時代的には昔が半分、著者がいた時代が半分て感じでなんかちょうどいい。しかしものすごい量記録あったのによく読んだな

マンガは特に面白いこともなく

School rumble こんな終わり方してたんだ、と思った。あとは変ゼミが終わりました

(23:44)


2016-01-02

_ 経県値

なんか前やったんだかやってないんだかわからんけど、記録残ってなかったので

http://uub.jp/kkn/km.cgi?MAP=44340444443354404144034344543000444040043000000&NAM=%82%CD%82%DC%82%B6&CAT=%90%B6%8AU%8Co%8C%A7%92l

行ったことあっても記憶が無いとこはのぞいた

(18:16)


2015-12-28

_ フェス

http://togetter.com/li/917489

ごめんなさいごめんなさい…

これとかひどい

https://stat.ink/u/hamaji/190197

(02:18)


2015-12-24

_ 進捗

min-caml についてる test てディレクトリのコード、浮動小数以外は完動した。

rs232c RX のシミュレーションはテストではしないようにした…ので入力ともなうシミュレーションが安定

負数のシフトをなおしたところ sort.l 動いた

なんか iverilog 普通に割り算やらしてくれるもんだから追加したら fizzbuzz.l も動いた

がまあ当然除算入ってると実際の回路合成でこらあかんという感じ。マルチクロックな割り算は IP コアがあるぽいのでそれ使えば良いかな。

いよいよ浮動小数かなあ。ソフトでやるより IP コアの方がラクだったりしないかな。。ただ iverilog でテストしにくくなるんだよな。

(01:21)


2015-12-23

_ こんぱいる

6分くらいだと思ってたら、15分かかるぞ。。。。。。。。

@toyoshim 先生がクロック落とせ、って言ってたのを思い出したので、 PLL 入れて 10MHz まで落としてみたら 2,3 分くらいになった。やったー PLL て何か知らんけど。

しかし気付いたら LE 結構使ってるもんやな

; Family                             ; Cyclone IV E
; Device                             ; EP4CE22F17C6
; Timing Models                      ; Final
; Total logic elements               ; 7,736 / 22,320 ( 35 % )
;     Total combinational functions  ; 7,225 / 22,320 ( 32 % )
;     Dedicated logic registers      ; 1,646 / 22,320 ( 7 % )
; Total registers                    ; 1646
; Total pins                         ; 86 / 154 ( 56 % )
; Total virtual pins                 ; 0
; Total memory bits                  ; 524,288 / 608,256 ( 86 % )
; Embedded Multiplier 9-bit elements ; 12 / 132 ( 9 % )
; Total PLLs                         ; 1 / 4 ( 25 % )

(01:47)

_ りすぷいんたぷりた

動きはじめた

(print 42)

で 42 て出せるだけだが。まあトレース見るとバグってるぽいが

(03:05)

_ りすぷ

(print (- (+ 5 (* 3 13)) 2))

くらいも動くようになった。

そろそろこれ以上複雑なプログラムは iverilog の速度的に不愉快という感がある

(03:33)

_ TODO

符号ついてる計算がたぶん色々おかしい。 sort.l が sort しない理由はたぶんこれ。まあむしろ動く方が不思議ですらある

fizzbuzz.l が動かないのはたぶん除算が無いから

rs232c の RX 側のシミュレータ実装がロクでもない。 iverilog に $getchar みたいなのがあれば話が早いと思うんだけど、どうもそいうの無いぽいんだよな。まあ rs232c は実機で十分動いてるんだから、もうちょい上のレイヤでシミュレーションする感じかな、その方が速度も出るしな

そろそろ浮動小数のソフト実装を使ってみるか

つーか min-caml が生成したバイナリを全部通すってのが先か

カーネルというかブートストラップローダというか、そういうものを最初に送る作りにすると複雑なプログラムを高速に送り込みやすいけど…まあ実際的なメリットが無いか

(04:38)


2015-12-21

_ instagramのセキュリティバグ見つけた人の話

http://www.exfiltrated.com/research-Instagram-RCE.php

を教えてもらって、ふむふむ任意コード実行とはひどいなーとか思ってたけど、その後の FB とのもめ事の方が面白かった。要はその任意コード実行使ってもっと探ってバグ報告したら、規約にそういうこと書いてないにも関わらずバグ使って権限のエスカレーションやるのは違反であると FB に言われて、その後自分の会社の CEO に連絡が行ったと。

まあこれ会社クビになったりしなくて良かったなあ。

で FB の CSO の反論らしい

https://www.facebook.com/notes/alex-stamos/bug-bounty-ethics/10153799951452929/

まぁ、規約に書いてないんだから、そのへんしっかりしてるべき大会社の FB の非は大きい…という感がある。だから対応の仕方も微妙な気がする。

でも CSO の "was not ethical behavior" てのはその通りな気がするんだよな。あと CSO は過剰反応されてびっくりした的に書いてるけど、これ実際そうなんじゃないかな… FB がこの人いじめる理由が無い気しかしないし

(00:01)

_ CPU進捗

N queen が解けた。

いさぎの良いメモリアロケータ

__attribute__((section(".heap")))
char heap[0x1000];

void* malloc(size_t s) {
  static char* p = heap;
  char* r = p;
  p += s;
  return r;
}

void free(void* p) {
}

(12:13)

_ null リファレンス

http://cpplover.blogspot.jp/2015/12/blog-post_21.html

これ、 warning 切ってるだけじゃないの?

$ cat null_cmp.cc
#include <vector>
using namespace std;
bool func(const vector<int>::iterator& i) {
  return &*i == nullptr;
}
$ clang++ -std=c++11 -c null_cmp.cc
null_cmp.cc:4:11: warning: reference cannot be bound to dereferenced null
      pointer in well-defined C++ code; comparison may be assumed to always
      evaluate to false [-Wtautological-undefined-compare]
  return &*i == nullptr;
          ^~    ~~~~~~~
/usr/bin/../lib/gcc/x86_64-linux-gnu/5.2.1/../../../../include/c++/5.2.1/bits/stl_iterator.h:753:7: note:
      'operator*' returns a reference
      operator*() const _GLIBCXX_NOEXCEPT
      ^
1 warning generated.

(12:22)

_ たらいを回して速度を測る

手元の i7 だと 0.02 秒で終わる tarai(12, 6, 0) を実行するのにだいたい30秒かかった。1500倍遅い。

クロックの比が68倍ありますけどね。まだ22倍の差があって。僕のCPUだいたい 5 CPI くらいだと思ってたんだけど、だとすると i7 0.22 CPI かよってことになって、いくらなんでもインテルすごすぎ感がある。

まあたぶん 5 CPI という見積りがあやしくて実際はもうちょい遅いとか、あと PPC て時点で命令数増えてたりしそう。そのへん考えると順当な差なのかなー

(20:55)


2015-12-20

_ ruby kaigi

前々日の宴会で、 TravisCI の人と話せて既に黒字化しとるという話を聞いてびびった。なんとなく気前が良すぎると思ってて客寄せ段階なんだと思ってた。

IBMのこれ、

https://github.com/rubyomr-preview/rubyomr-preview

ダウンロードだけしてまだ中見てない。 OMR 側のコードはまだ出てないんだよな

前行った時も思ったけど、ずいぶんプロぽい感じになったよなあとか。別に長くつきあってるわけじゃないけど、まあ最近だけ見ても

akrさんがmakeのやばさを理解しててさすがと思った

Ruby 自体に興味がなさすぎて話のわからないぷりがさらに増えてる感があった。 rails より最近の単語がすごく基本的な説明すらできない。 sinatra …聞いたことあるな、なんかweb。くらいの

(00:38)


2024年
4月
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30

search / home / index

全てリンクフリーです。 コード片は自由に使用していただいて構いません。 その他のものはGPL扱いであればあらゆる使用に関して文句は言いません。 なにかあれば下記メールアドレスへ。

shinichiro.hamaji _at_ gmail.com / shinichiro.h