あなたの「公開鍵暗号」はPKE? それともPKC?

初めに

サイボウズ・ラボの光成です。 いきなりですがクイズです。次のうち正しい説明はどれでしょう。

  • SSHやFIDO2などの公開鍵認証はチャレンジを秘密鍵で暗号化し、公開鍵で復号して認証する。
  • ビットコインでは相手の公開鍵を用いてハッシュ値を暗号化して相手に送る。
  • TLS1.3ではサーバ公開鍵を用いてAESの秘密鍵を暗号化する。
続きを読む

富岳版XbyakがIntelの深層学習ライブラリoneDNNにmergeされる

初めに

サイボウズ・ラボの光成です。

このたび、Intelの公式深層学習ライブラリoneDNNに、富士通が開発しているスーパーコンピュータ富岳向けのPull Requestがmergeされました。 その開発に関わることになった経緯を紹介します。

続きを読む

「第 9 期サイボウズ・ラボユース成果発表会」開催

みなさんこんにちは。サイボウズ・ラボの内田です。

2020 年 3 月 30 日に第 9 期サイボウズ・ラボユース成果発表会を開催しましたので,その模様を紹介します。 今年は新型コロナウイルスの影響で,Zoom でオンライン開催されました。

サイボウズ・ラボユース

サイボウズ・ラボユースとは日本の若手エンジニアを発掘し,育成する場を提供する制度です。

ラボユース生が作りたいものをサイボウズ・ラボの社員がメンターとしてサポートし,開発機材や開発活動に応じた補助金,旅費の援助をします。開発物をオープンソースとして公開するという条件の元で著作権は開発者本人に帰属します。

今期はラボユース生 8 名が成果を発表しました。

続きを読む

指数関数expのAVX-512によるベクトル化

初めに

サイボウズ・ラボの光成です。

C++で単精度配列に対する指数関数のベクトル化をAVX-512を使って実装しました。 標準関数std::exp(float)に対する相対誤差は2e-6、速度は10倍ぐらいです。 指数関数をどうやって計算するのか、一般的な話とAVX-512に特有の部分を紹介します。

続きを読む

MKL-DNNで学ぶIntel CPUの最適化手法

初めに

サイボウズ・ラボの光成です。

DNN(deep neural network : 深層学習)といえばGPUや専用プロセッサを使うのが主流です。 しかしIntelはCPUで高速にDNNをするためのライブラリ MKL-DNN を提供しています。 MKL-DNNはIntelの最新CPUに対応したオープンソースソフトウェアなのでコードを見ると勉強になります。

ここではMKL-DNNで使われているテクニックをいくつか紹介します。

続きを読む