Apple、1万行の手動で最適化されたアセンブリー・コードを書いたカメラアプリ会社を買収
1 :
キン肉バスター(三重県):
Apple、iPhoneのカメラでフル解像度毎秒30枚の撮影ができるアプリのスタートアップ、SnappyLabsを買収
Appleはファウンダーがたった1人で運営しているカメラ・テクノロジーのスタートアップ、
SnappyLabsを買収したという情報が入った[アップデート:2014/ 1/5 太平洋時間9:15am:Appleはこの買収を確認した] 。
SnappyLabsのファウンダー、John Papandriopoulosはメルボルン大学から電気工学の博士号を得た技術者で、
彼の発明したテクノロジーにより、SnappyCamはフル解像度でiPhoneのカメラで毎秒20コマから30コマの画像を
フル解像度で撮影することができる。
(中略)
PapandriopoulosはiPhoneのカメラで静止画の高速連写を可能にするSnappyCamをApp Storeで1ドルで販売してきた。
私が7月に紹介記事を書いた後、Papandriopoulosは「SnappyCamは9カ国で有料アプリのトップにランクインした」と
知らせてきた。この売上のおかでPapandriopoulosはベンチャーキャピタルに頼ることなく運営を続けることができたものと思われる。
Papandriopoulosは7月、私の取材に応えて「離散コサイン変換に関してインスピレーションが閃いた。
それによってJPG画像フォーマットを事実上まったく新しいものに改良できた」と語った。現在は削除されているブログ記事で
Papandriopoulosはこう説明している。
"まずわれわれは高速な離散コサイン変換(DCT)のアルゴリズムを研究した。
次いでARMのNEON SIMD コ・プロセッサのアーキテクチャに最適化された
新しいアルゴリズムの開発に成功した。最終プロダクトは1万行の手動で最適化された
アセンブリー・コードと 2万行の低レベルCコードとなった。ちなみにSnappyCamの
アプリは5万行弱のObjective Cコードからなる。
JPEG圧縮は(上記の)DCTと ハフマン・ロスレス圧縮という2つの部分からなる。
われわれは素晴らしく高速なDCTの実装に成功したが、するとハフマン圧縮が
ボトルネックとなった。の の部分については、われわれはARMプロセッサの
アーキテクチャに最適化され、高度にチューンされたアセンブリー言語のプログラムを書いた。"
http://jp.techcrunch.com/2014/01/06/20140104snappylabs/
2 :
魔神風車固め(神奈川県):2014/01/07(火) 22:39:35.91 ID:Q3kfn/eQ0
ハッ、俺なんてバイナリでかけるし
プログラマかっけー
4 :
エルボードロップ(新疆ウイグル自治区):2014/01/07(火) 22:41:07.69 ID:SCYBHZmz0
俺もなんか書こうかな
ハフマンには前々から俺が指摘してた
6 :
男色ドライバー(山口県):2014/01/07(火) 22:43:42.53 ID:vXO8RvXd0
7 :
ファイナルカット(広島県):2014/01/07(火) 22:44:55.30 ID:RFcpO8Pq0
連写するために自前の高速Jpegエンコーダを書いたのか
今時アセンブラとかすげーな
なるほどね
なかなか面白い
10 :
キングコングニードロップ(愛知県):2014/01/07(火) 22:47:23.35 ID:c/UUV+Yd0
iPhone6に搭載確定だな
11 :
ムーンサルトプレス(西日本):2014/01/07(火) 22:48:28.78 ID:8941WCRx0
毎秒30枚ってもう動画じゃん
ふむふむ
なるほどまったくわからん
プログラマの中でも、こういう低級言語を自由自在にこなせる連中は本当に職人だと思う
14 :
ファルコンアロー(茨城県):2014/01/07(火) 22:58:38.72 ID:CQK1IE9X0
ちょうど俺もやろうと思ってた所だったのに
一方日本人は意味もわからずライブラリを参照する奴隷と
仕組みも分からない奴隷使いが企業の基幹システム作って
「動いた動いた!」とおおはしゃぎ
後にシステム障害、個人情報流出
というか、
一人の天才プログラマとそいつが書いたソフトウェアを
アップルが買いとりましたって話じゃん。
17 :
ジャンピングカラテキック(大阪府):2014/01/07(火) 23:03:31.90 ID:QTkQB5v40
躓くのハフマンのとこだよね
ARMに投げたらよかったんか
18 :
ファイナルカット(東日本):2014/01/07(火) 23:03:57.74 ID:aODGde300
茨城カモン!
いるのかねこの機能
20 :
フランケンシュタイナー(新潟県):2014/01/07(火) 23:11:03.26 ID:f+RMULZK0
iPhoneアプリ作るのメンド臭い・・・。
MPWとかTHINK C、ResEditの頃が懐かしい。
21 :
エルボードロップ(新疆ウイグル自治区):2014/01/07(火) 23:15:40.00 ID:SCYBHZmz0
22 :
ヒップアタック(やわらか銀行):2014/01/07(火) 23:16:13.14 ID:N8XX4i210
今、Armじゃないじゃん
23 :
急所攻撃(愛知県):2014/01/07(火) 23:20:19.49 ID:Rxe0QPol0
つまり、高橋名人より速くシャッターを押せるわけだな?
24 :
ナガタロックII(福岡県):2014/01/07(火) 23:24:48.90 ID:zSs5LkU30
アセンブラで仕事したのって、1995年が最後かな。
Netwareのデバイスドライバだった。
25 :
セントーン(愛媛県):2014/01/07(火) 23:32:30.31 ID:f6zVr1DN0
26 :
男色ドライバー(やわらか銀行):2014/01/07(火) 23:36:07.65 ID:0RdugQD90
今宵は俺の作ったクソゲーアプリを買い取ってくれる妄想で寝るわ
27 :
エルボードロップ(新疆ウイグル自治区):2014/01/07(火) 23:36:17.92 ID:SCYBHZmz0
ようわからんのだが
複雑なアプリのコードは
頭いいやつが作ればサクサクになるよってことでおk?
29 :
チェーン攻撃(チベット自治区):2014/01/07(火) 23:38:36.48 ID:sNog9bof0
>>28 ハード変わったらゴミと化すけどな。
ゲーム機で最高性能発揮させましたみたいな話。
30 :
足4の字固め(東京都):2014/01/07(火) 23:41:46.86 ID:pwyIlDq40
俺なんか手動でスピーカーの穴押さえてシャッター音消してるし
31 :
サッカーボールキック(SB-iPhone):2014/01/07(火) 23:43:54.44 ID:kvzJLTcjP
アセンブラで一万行が注目されてるけど、JPEG展開の新しいアルゴリズムを再発明というのが重要だろ
32 :
サッカーボールキック(SB-iPhone):2014/01/07(火) 23:45:09.93 ID:kvzJLTcjP
展開じゃなくて圧縮だた
33 :
ネックハンギングツリー(やわらか銀行):2014/01/07(火) 23:50:02.36 ID:Gwk/VwpN0
これスループットが30枚/Sなの?(=30fpsのモーションJPEGが連続撮影できるのか)
秒間30枚の画像が最大xx秒間撮れますよ、って話なの?
後者なら別に大したことなくね?
34 :
トラースキック(神奈川県):2014/01/07(火) 23:50:53.79 ID:4C04uRI50
スレタイをデタラメ書くのが
流行りなのか?
エクスペリアのタイムシフト連写みたいな?w
36 :
ジャンピングカラテキック(群馬県):2014/01/07(火) 23:51:51.46 ID:NnibvBh80
一方、Androidはハードウェアでカメラを高速化した。
37 :
魔神風車固め(禿):2014/01/07(火) 23:52:15.09 ID:muR+kNN1i
まぁ、2万行をガリガリ一人で書いたのはウソだな
コンパイラがそこまでアホじゃないから、
時間がかかるネック部分だけ書き直したはず
38 :
ボマイェ(新疆ウイグル自治区):2014/01/08(水) 00:05:45.58 ID:yALhjtLI0
こういう最適化を素早くできればいいけど、
ハードの性能UPのスピードの方が早かったりするから、
労力注ぎ込むには躊躇する。
39 :
ハイキック(北海道):2014/01/08(水) 00:22:15.54 ID:mLXSfTGO0
ハードが早くなるとその分以上を
ソフトが御手軽な巨大ライブラリーの使ってもいないコードで食い潰すからな
40 :
ブラディサンデー(東日本):2014/01/08(水) 00:24:37.40 ID:SLgyJHjj0
ハードの限界を超えるとか、天才プログラマーかよ
41 :
ラダームーンサルト(新疆ウイグル自治区):2014/01/08(水) 00:28:16.14 ID:/EiWQDn60
今、劇的な圧縮ルーチンが欲しいんだけど、誰か書いてよ
そんなことよりフルHD120fpsの超ぬるぬる動画を撮らせなさい
43 :
断崖式ニードロップ(兵庫県):2014/01/08(水) 00:29:54.37 ID:I4UsIAhn0
意味わからん
ドラゴンボールに例えてくれ
ん〜そう書いてあるよ?!
45 :
足4の字固め(神奈川県):2014/01/08(水) 00:34:27.30 ID:4aK+P+Ia0
こういう人が将来茅場明彦になるのか(´・ω・`)
>>16 そうだよ
みんながわかってる事をあえて説明し直したのは何でですか?
>>29 要はjpegのエンコーダだから、転用は多少効くだろ
鈴木裕がアップをはじめました
高速連写が次のOSメジャーアップデートの目玉機能の一つになるのか
DCTやらハフマン圧縮やら、もう完成された分野だと思っていたけど、
工夫のしようがあるのだなあ。
52 :
テキサスクローバーホールド(茨城県):2014/01/08(水) 00:53:55.07 ID:uSYU0Wl40
従来のiphoneカメラでフル解像度でサクサク動画取れるで
ってことなんか
54 :
ファイヤーバードスプラッシュ(広島県):2014/01/08(水) 01:09:56.90 ID:NBic53IC0
55 :
雪崩式ブレーンバスター(やわらか銀行):2014/01/08(水) 01:12:08.44 ID:etjcGwKw0
だいたいC++とか使うからコードもバイナリも膨大になる
ハンドアセンブルで全部やるべき
56 :
エクスプロイダー(新疆ウイグル自治区):2014/01/08(水) 01:17:06.62 ID:+N2V4F+n0
要するに、このカメラアプリはなんか凄いってことだな。
要するにマシン語で石の性能を最大限に引き出しただけだろ
全然大したことないw
58 :
エクスプロイダー(新疆ウイグル自治区):2014/01/08(水) 01:25:24.66 ID:+N2V4F+n0
ってか、アーキテクチャとかボトルなんとかとか、お前はルー大柴かよ!日本語でしゃべれ!
59 :
メンマ(東京都):2014/01/08(水) 01:35:42.25 ID:T19w1HdE0
>>Papandriopoulosは
>> Papandriopoulosは
>> Papandriopoulosは
>>Papandriopoulosは
>>Papandriopoulosは
ゲシュタルト崩壊起こしそう
60 :
サッカーボールキック(西日本):2014/01/08(水) 01:36:12.02 ID:N6z4mTWT0
>次いでARMのNEON SIMD コ・プロセッサのアーキテクチャに最適化された
ここが一番重要なんだろうな
この手のプログラムの高速化のためにSIMDは開発されたようなもんだから
61 :
足4の字固め(dion軍):2014/01/08(水) 02:21:47.06 ID:K4Z4q8er0
こりゃ凄いな。やるじゃんプログラマ。
62 :
バーニングハンマー(新疆ウイグル自治区):2014/01/08(水) 02:59:05.86 ID:jQXSqDDL0
数学もわかってなおかつプログラムもかけるってなかなか亡い才能だわ
63 :
ツームストンパイルドライバー(WiMAX):2014/01/08(水) 03:06:18.68 ID:1JeKDvJy0
k
64 :
ツームストンパイルドライバー(WiMAX):2014/01/08(水) 03:07:45.81 ID:1JeKDvJy0
このアプリとTehu君のアプリはどっちが凄いの?
土方じゃないプログラマーとして食っていける奴は数学ができる奴
66 :
イス攻撃(長崎県):2014/01/08(水) 03:16:06.09 ID:nZJHG7C40
ファウンダーとは何なのかがまず分からない
67 :
ファイヤーボールスプラッシュ(東日本):2014/01/08(水) 03:19:52.01 ID:i1PkRVzm0
だっふんだーの仲間だよ
68 :
エルボードロップ(東京都):2014/01/08(水) 03:24:24.23 ID:a9zunDL80
ガオー
要はモーションJPEGみたいなのをソフトでやったということか
>>47 素直に訳文を読むと複数人の勤務する会社組織を買収したとしか
理解できないわけだが。
「われわれの」とかさ。一人じゃん。
一人にわれわれって訳文つけるのは間違いだろ?
だからスレタイも
Apple、1万行の手動で最適化されたアセンブリー・コードを書いたカメラアプリの個人会社を買収
としとけばいいだけのこと。
72 :
アトミックドロップ(新疆ウイグル自治区):2014/01/08(水) 05:28:08.77 ID:57fdiYe20
アプリ自体はObjective-Cなんだな
ARM NEONに最適化したDCTライブラリをアセンブラで作った
NEONなんかまともに使ってるとこあるんかね
やべえ
パソコン大先生の俺も一攫千金目指して頑張ちゃうかな(`・ω・´)
74 :
ドラゴンスクリュー(dion軍):2014/01/08(水) 07:10:12.19 ID:SNgPslWZ0
ハフマン圧縮の部分がフルアセンブリで高速化されたとなると
ほぼ全部のアプリに恩恵があるね
76 :
魔神風車固め(やわらか銀行):2014/01/08(水) 11:40:09.17 ID:y5qcFW700
NOPの連続で1万行達成
78 :
ジャーマンスープレックス(SB-iPhone):2014/01/08(水) 13:10:18.52 ID:A9aQ1fgbP
>>64 Tehu君のアプリってまさか健康計算機のこと?
79 :
ハーフネルソンスープレックス(チベット自治区):
casioが危ない