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
ハッ、俺なんてバイナリでかけるし
3 ナガタロックII(茨城県):2014/01/07(火) 22:40:26.76 ID:wsODFklY0
プログラマかっけー
4 エルボードロップ(新疆ウイグル自治区):2014/01/07(火) 22:41:07.69 ID:SCYBHZmz0
俺もなんか書こうかな
5 エクスプロイダー(dion軍):2014/01/07(火) 22:42:21.08 ID:zdWSp0mF0
ハフマンには前々から俺が指摘してた
6 男色ドライバー(山口県):2014/01/07(火) 22:43:42.53 ID:vXO8RvXd0
【山口県宇部市】 女子高生に集団暴行で4人を逮捕

2014年1月5日現在 Yahoo!検索結果


浅上遼馬 約744,000件  「浅上遼馬 宇部」「 宇部市 浅上遼馬」で検索
浅上遼馬 https://www.facebook.com/profile.php?id=100003677097549

廣元義教 約743,000件
廣元義教 https://www.facebook.com/profile.php?id=100004182852538

石本弦己 約75,300件  「宇部市 石本弦己」で検索
石本弦己 https://www.facebook.com/genki.ishmoto

鶴谷大亮 約62,400件  「鶴谷大亮 鶴谷秀電社」「鶴谷大亮 宇部市」で検索
鶴谷大亮 https://www.facebook.com/profile.php?id=100005967876286
7 ファイナルカット(広島県):2014/01/07(火) 22:44:55.30 ID:RFcpO8Pq0
連写するために自前の高速Jpegエンコーダを書いたのか
8 サッカーボールキック(庭):2014/01/07(火) 22:45:59.67 ID:9lL5h1pNP
今時アセンブラとかすげーな
9 ジャンピングカラテキック(大阪府):2014/01/07(火) 22:46:19.60 ID:QTkQB5v40
なるほどね
なかなか面白い
10 キングコングニードロップ(愛知県):2014/01/07(火) 22:47:23.35 ID:c/UUV+Yd0
iPhone6に搭載確定だな
11 ムーンサルトプレス(西日本):2014/01/07(火) 22:48:28.78 ID:8941WCRx0
毎秒30枚ってもう動画じゃん
12 栓抜き攻撃(三重県):2014/01/07(火) 22:57:00.66 ID:bXI0/+qq0
ふむふむ
なるほどまったくわからん
13 ジャーマンスープレックス(東京都):2014/01/07(火) 22:58:26.87 ID:Ajim0CJ00
プログラマの中でも、こういう低級言語を自由自在にこなせる連中は本当に職人だと思う
14 ファルコンアロー(茨城県):2014/01/07(火) 22:58:38.72 ID:CQK1IE9X0
ちょうど俺もやろうと思ってた所だったのに
15 ドラゴンスープレックス(新疆ウイグル自治区):2014/01/07(火) 22:59:27.13 ID:iCFHueeI0
一方日本人は意味もわからずライブラリを参照する奴隷と
仕組みも分からない奴隷使いが企業の基幹システム作って
「動いた動いた!」とおおはしゃぎ
後にシステム障害、個人情報流出
16 サッカーボールキック(庭):2014/01/07(火) 23:00:49.73 ID:qRL/vx+2P
というか、
一人の天才プログラマとそいつが書いたソフトウェアを
アップルが買いとりましたって話じゃん。
17 ジャンピングカラテキック(大阪府):2014/01/07(火) 23:03:31.90 ID:QTkQB5v40
躓くのハフマンのとこだよね
ARMに投げたらよかったんか
18 ファイナルカット(東日本):2014/01/07(火) 23:03:57.74 ID:aODGde300
茨城カモン!
19 キングコングニードロップ(千葉県):2014/01/07(火) 23:07:15.95 ID:6ZJo7C8J0
いるのかねこの機能
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
>>19
居るのか猫の昨日
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
>>15
全くその通り
面白いよね、日本
26 男色ドライバー(やわらか銀行):2014/01/07(火) 23:36:07.65 ID:0RdugQD90
今宵は俺の作ったクソゲーアプリを買い取ってくれる妄想で寝るわ
27 エルボードロップ(新疆ウイグル自治区):2014/01/07(火) 23:36:17.92 ID:SCYBHZmz0
>>15
断片化祭り
28 フライングニールキック(福島県):2014/01/07(火) 23:36:44.63 ID:38heDt1V0
ようわからんのだが
複雑なアプリのコードは
頭いいやつが作ればサクサクになるよってことでお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
スレタイをデタラメ書くのが
流行りなのか?
35 ブラディサンデー(広島県):2014/01/07(火) 23:51:35.12 ID:iUunmSOJ0
エクスペリアのタイムシフト連写みたいな?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
今、劇的な圧縮ルーチンが欲しいんだけど、誰か書いてよ
42 アトミックドロップ(富山県):2014/01/08(水) 00:29:17.08 ID:zuMIelny0
そんなことよりフルHD120fpsの超ぬるぬる動画を撮らせなさい
43 断崖式ニードロップ(兵庫県):2014/01/08(水) 00:29:54.37 ID:I4UsIAhn0
意味わからん
ドラゴンボールに例えてくれ
44 魔神風車固め(東京都):2014/01/08(水) 00:33:23.77 ID:PjqFQvlG0
ん〜そう書いてあるよ?!
45 足4の字固め(神奈川県):2014/01/08(水) 00:34:27.30 ID:4aK+P+Ia0
こういう人が将来茅場明彦になるのか(´・ω・`)
46 魔神風車固め(東京都):2014/01/08(水) 00:34:36.89 ID:PjqFQvlG0
47 ジャーマンスープレックス(家):2014/01/08(水) 00:37:52.76 ID:xOvrZcpuP
>>16
そうだよ
みんながわかってる事をあえて説明し直したのは何でですか?
48 ジャーマンスープレックス(家):2014/01/08(水) 00:39:11.33 ID:xOvrZcpuP
>>29
要はjpegのエンコーダだから、転用は多少効くだろ
49 中年'sリフト(東日本):2014/01/08(水) 00:41:20.31 ID:av6pSotK0
鈴木裕がアップをはじめました
50 ハイキック(チベット自治区):2014/01/08(水) 00:42:36.07 ID:N2H8L2He0
高速連写が次のOSメジャーアップデートの目玉機能の一つになるのか
51 ファイヤーボールスプラッシュ(東京都):2014/01/08(水) 00:45:57.31 ID:+1o0UK6KP
DCTやらハフマン圧縮やら、もう完成された分野だと思っていたけど、
工夫のしようがあるのだなあ。
52 テキサスクローバーホールド(茨城県):2014/01/08(水) 00:53:55.07 ID:uSYU0Wl40
>>18
呼んだ?
53 ジャーマンスープレックス(東京都):2014/01/08(水) 01:08:21.83 ID:WYaptCy6P
従来のiphoneカメラでフル解像度でサクサク動画取れるで
ってことなんか
54 ファイヤーバードスプラッシュ(広島県):2014/01/08(水) 01:09:56.90 ID:NBic53IC0
>>53
動画と静止画では意味が違うよ
55 雪崩式ブレーンバスター(やわらか銀行):2014/01/08(水) 01:12:08.44 ID:etjcGwKw0
だいたいC++とか使うからコードもバイナリも膨大になる
ハンドアセンブルで全部やるべき
56 エクスプロイダー(新疆ウイグル自治区):2014/01/08(水) 01:17:06.62 ID:+N2V4F+n0
要するに、このカメラアプリはなんか凄いってことだな。
57 膝十字固め(大阪府):2014/01/08(水) 01:22:41.51 ID:zBXhA0xB0
要するにマシン語で石の性能を最大限に引き出しただけだろ
全然大したことない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君のアプリはどっちが凄いの?
65 アトミックドロップ(新疆ウイグル自治区):2014/01/08(水) 03:11:54.17 ID:oSxMtPxY0
土方じゃないプログラマーとして食っていける奴は数学ができる奴
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
ガオー
69 ボマイェ(奈良県):2014/01/08(水) 03:57:35.70 ID:6EwQ1FI/0
要はモーションJPEGみたいなのをソフトでやったということか
70 ジャーマンスープレックス(庭):2014/01/08(水) 05:24:19.64 ID:ouxtuxRJP
>>47
素直に訳文を読むと複数人の勤務する会社組織を買収したとしか
理解できないわけだが。
「われわれの」とかさ。一人じゃん。
一人にわれわれって訳文つけるのは間違いだろ?
71 ジャーマンスープレックス(庭):2014/01/08(水) 05:27:55.08 ID:ouxtuxRJP
だからスレタイも
Apple、1万行の手動で最適化されたアセンブリー・コードを書いたカメラアプリの個人会社を買収

としとけばいいだけのこと。
72 アトミックドロップ(新疆ウイグル自治区):2014/01/08(水) 05:28:08.77 ID:57fdiYe20
アプリ自体はObjective-Cなんだな
ARM NEONに最適化したDCTライブラリをアセンブラで作った
NEONなんかまともに使ってるとこあるんかね
73 キングコングラリアット(チベット自治区):2014/01/08(水) 06:31:21.42 ID:XQxP71J30
やべえ
パソコン大先生の俺も一攫千金目指して頑張ちゃうかな(`・ω・´)
74 ドラゴンスクリュー(dion軍):2014/01/08(水) 07:10:12.19 ID:SNgPslWZ0
>>49
ソーシャルでもつくってろバーカ
75 ウエスタンラリアット(大阪府):2014/01/08(水) 07:56:24.15 ID:fYJm9xXn0
ハフマン圧縮の部分がフルアセンブリで高速化されたとなると
ほぼ全部のアプリに恩恵があるね
76 魔神風車固め(やわらか銀行):2014/01/08(水) 11:40:09.17 ID:y5qcFW700
>>72
コンパイラはSIMD使うよ
77 フォーク攻撃(東京都):2014/01/08(水) 11:42:03.58 ID:r6RG+nmv0
NOPの連続で1万行達成
78 ジャーマンスープレックス(SB-iPhone):2014/01/08(水) 13:10:18.52 ID:A9aQ1fgbP
>>64
Tehu君のアプリってまさか健康計算機のこと?
79 ハーフネルソンスープレックス(チベット自治区)
casioが危ない