SlideShare uma empresa Scribd logo
1 de 50
Baixar para ler offline
An Introduction to

     Software
   Transactional
      Memory
【見覚え】   小林浩一 (koichik) 【あります】
Agenda
トランザクション
トランザクショナルメモリ
ソフトウェアトランザクショナルメモリ
Sun DSTM2
トランザクション
データベースでお馴染みの概念
重要な性質
 ACID特性
 並行性
ACID特性
Atomicity
  不可分性
Consistency
  完全性
Integrity
  一貫性
Durability
  永続性
並行性
直列化可能性 (Serializability)

 並列実行            直列実行      直列実行

                   t1       t2
 t1    t2
            どちらかと
            同じ結果 t2         t1
並行性制御
悲観的並行性制御 (blocking)
 競合が起きることを前提とする
 リソースへのアクセスを排他的に行う
 通常DBMSレベルで実現
楽観的並行性制御 (non blocking)
 競合は滅多に起きないことを前提とする
   競合が起きた場合はいずれかのトランザクションを
   ロールバックしてリトライする
 リソースへのアクセスは並行に行う
 通常アプリケーションレベルで実現
トランザクション
            まとめ
ACID特性
並行性
 直列化可能性
並行性制御
 悲観的並行性制御
 楽観的並行性制御
Agenda
トランザクション
トランザクショナルメモリ
ソフトウェアトランザクショナルメモリ
Sun DSTM2
トランザクショナルメモリ
トランザクションの特性をメモリアクセスに応用
 ACI特性
  揮発性のメモリではdurabilityは不要
 並行性
  楽観的並行性制御への関心が高い
目的
並行性の向上
 Multi Core・Many Core時代に対応
モジュール性の向上
 従来の場合
  スレッドセーフなモジュールの組み合わせが
  スレッドセーフになるとは限らない
 トランザクショナルメモリの場合
  スレッドセーフなモジュールを組み合わせても
  スレッドセーフ
  操作は合成 (compose) 可能
トランザクショナルメモリの現在
実用段階の手前
研究・評価段階
様々な実現方法
実現位置
粒度
更新タイミング
競合の検出
同期アルゴリズム
実現位置
ソフトウェア (STM)
 ソフトウェアで実現
ハードウェア (HTM)
 ハードウェアで実現
ハイブリッド (HyTM)
 ソフトとハードで実現
粒度
トランザクショナルなデータの単位
ワードレベル (word granularity)
 32bit/64bitのワード単位
 HTMに多い
オブジェクトレベル (object granularity)
 プログラミング言語のオブジェクト単位
 STMに多い
更新タイミング
更新を共有メモリに反映するタイミング
遅延書込 (deferred update)
 更新時はコピーを作成
 コミット時にまとめて反映
直接書込 (direct update)
 更新時にバックアップを取得
 ロールバック時に元に戻す
競合の検出
オープン時 (detected on open)
  トランザクション開始時にチェック
    トランザクション開始時に使用するデータを列挙
  非現実的
バリデーション時 (detected on validation)
  データをリード/ライトする際にチェック
  オーバーヘッド大
コミット時 (detected on commit)
  コミットの際にチェック
  無駄な処理を行う可能性大
同期アルゴリズム
同期 (blocking,悲観的)
非同期 (non blocking,楽観的)
 wait-freedom
   全てのスレッドが前進
 lock-freedom
   少なくとも一つのスレッドが前進
 obstraction-freedom
   他のスレッドと衝突しなければ前進
   衝突はContention Managerが管理
     自由度が高くて現実的
トランザクショナルメモリ
          まとめ
実現方式は様々
 まだまだ研究・評価段階
 具体的な説明しにくいのよ
当面は柔軟性の高いSTMで模索
HTMは時期尚早(?)
 Sunは2009年(当初は2008年)出荷予定の
 次世代プロセッサ(Rock)でHTMをサポート
 IntelはHardware Accelerated STMを研究中
Agenda
トランザクション
トランザクショナルメモリ
ソフトウェアトランザクショナルメモリ
Sun DSTM2
ソフトウェアトランザクショナルメモリ
ソフトウェアによるトランザクショナルメモリ
 ハードウェア的には通常のメモリアクセス
こちらも研究・評価段階
実現方法
言語レベル
 プログラミング言語及び処理系でSTMをサポート
ライブラリレベル
 ライブラリレベルでSTMをサポート
言語レベル
主要なキーワード
 atomic
 retry
 orElse
atomic
トランザクション境界を定義

atomic {
    if (x == null) {
         x = new Foo();
    }
}
retry (1)
問題

atomic {
    while (x == null) {
         sleep();  無限ループ
    }
    x.bar();
}
retry (2)
トランザクションをロールバックして再試行

atomic {
    if (x == null) {
        retry;
    }
    x.bar();
}
or else
ロールバックした場合の処理
 retryした場合も含む


atomic {
    return getElement();
} orElse {
    return null;
}
ソフトウェアトランザクショナルメモリ
        まとめ
実現方式は様々
 まだまだ研究・評価段階
 具体的な説明しにくいのよ
キーワード
 atomic
 retry
 orElse
当面は柔軟性の高いライブラリで模索か?
Agenda
トランザクション
トランザクショナルメモリ
ソフトウェアトランザクショナルメモリ
Sun DSTM2
Sun DSTM2
Dynamic Software Transactional
Memory 2.0
 http://www.sun.com/download/products.xml?id=453fb28e

STMのためのフレームワーク
 STM実現のためのメカニズムを提供
 様々な実装を選択可能
コンポーネント (1)
アトミックオブジェクト
 トランザクショナルなオブジェクト
 getter/setterを持ったインタフェース
   実装はファクトリが動的に作成
 @Atomicアノテーションを付ける
ファクトリ
 アトミックインタフェースの実装クラスを動的に生成する
   Apache BCELを使用
アダプタ
 アトミックオブジェクトの振る舞いを提供
 STMを実現するキモ
コンポーネント (2)
コンテンションマネージャ
 競合を調停する
スレッド
 java.lang.Threadのサブクラス
 トランザクションやコンテキスト情報を管理
トランザクション
 トランザクションの状態を管理
アトミックオブジェクトクラス
トランザクショナルなオブジェクトの
インタフェース
 getter/setterメソッドを定義する

@Atomic
public interface AtomicData {
  void setValue(int value);
  int getValue();
}
ファクトリの生成
アトミックオブジェクトとアダプタの
クラスを指定


AtomicFactory<AtomicData>
  atomicFactory =
    new AtomicFactory<AtomicData>(
      AtomicData.class,
      Adapter.class);
アトミックオブジェクトの生成
ファクトリから生成
 アトミックインタフェースを実装した
 動的に生成されたクラスのインスタンス

AtomicData atomicData =
  atomicFactory.create();
アトミックオブジェクトの操作
Callable/Runnableを使用
atomicブロックに相当


Callable<Integer> readOperation =
   new Callable<Integer>() {
     public Integer call() {
       return atomicData.getValue();
     }
};
トランザクショナルに実行
Threadを使用
 java.lang.Threadのサブクラス
 使用するContentionManagerクラスを設定

Thread.setContentionManagerClass(
  BackoffManager.class);
int value =
  Thread.doIt(readOperation);
トランザクションのアボート
retry相当



Thread.getTransaction().abort();
アボート時の操作
RunnableをThreadに登録
orElseブロック相当


Thread.onAbort(new Runnable() {
  public void run() {
    ...
  }
});
STMのフレームワーク
アトミックオブジェクトの振る舞いを
カスタマイズ可能
 アダプタ
 コンテンションマネージャ
アダプタ
アトミックオブジェクトを実現するクラス
DSTM2標準のアダプタ
 dstm2.factory.ofree.Adapter
   同期:non blocking (obstraction-freedom)
   粒度:object level
   更新:defered update
   競合検出:detected on validation
 dstm2.factory.twophase.Adapter
   同期:blocking (synchronize)
 dstm2.factory.shadow.Adapter
   ???
ofree.Adapter
              Factoryが
                           構造                               Factoryが
                生成                                            生成
 <Atomic>                 Locator   writer    Transaction
AtomicData
                                                 state



                                     new
AtomicData$                         Version   AtomicData$
                                                 value



                                      old
 Adapter       start                Version   AtomicData$
                                                 value


               Atomic
              Reference
ofree.Adapter
                         初期状態
 <Atomic>               Adapter   writer    Transaction
AtomicData
                                             committed



                                   new
AtomicData$                       Version   AtomicData$
                                               value



                                    old
 Adapter      start               Version
                                            null
ofree.Adapter                   ①committed
                         リード(1)                         なので



 <Atomic>              Adapter   writer    Transaction
AtomicData
                                            committed



                                  new
AtomicData$                      Version   AtomicData$
                                              value



                                   old
 Adapter      start              Version              ②newVersion
                                           null
                                                        を読む
<Atomic>             ofree.Adapter
AtomicData
                           ライト

AtomicData$            Locator   writer
                                            committed
                                  new
                                 Version      value
                                   old
 Adapter      start              Version   null         ①前の値を
                                                        コピーして
                                                        新しい値を
                       Locator   writer                  書き込む
                                           active
 ②新しいAdapterを                     new
 作成して繋ぎ替え                        Version      value
                                   old
                                 Version
ofree.Adapter                       ①active
                         リード(2)                           なので



 <Atomic>               Locator   writer    Transaction
AtomicData
                                               active



                                   new
AtomicData$                       Version   AtomicData$
                                               value



                                    old
 Adapter      start               Version   AtomicData$
                                               value


                                                        ②oldVersion
                                                          を読む
ofree.Adapter                    ①committed
                         コミット後                           にする



 <Atomic>               Locator   writer    Transaction
AtomicData
                                             committed



                                   new
AtomicData$                       Version   AtomicData$
                                               value



                                    old
 Adapter      start               Version   AtomicData$
                                               value
コンテンションマネージャ
競合の調整役
競合
 参照と更新
 更新と更新
調整
 競合したトランザクションのいずれかを
 アボートさせる
どのトランザクションを選択するか?
 様々なポリシーが考えられる
コンテンションマネージャ
標準の実装
BackoffManager
PriorityManager
AggressiveManager
EruptionManager
GreedyManager
KarmaManager
KindergartenManager
デモ
AtomicData
  intの値1つ
  インスタンスを2つ作成 (AとB)
atomicブロックAtoB
  Aの値+1→Bの値
atomicブロックBtoA
  Bの値+1→Aの値
Runner
  AtoBとBtoAをトランザクショナルに実行
       atomicな操作の合成
  トランザクションを10回実行
Test
  Runnerを2つのスレッドで実行
Sun DSTM2
              まとめ
DSTM2はSTMのフレームワーク
様々な実現方法を組み込み可能
 Adapter
 ContentionManager
標準のAdapterは3つ
 obstraction-freedom (楽観的)
 two phase lock (悲観的)
 stripe (???)
参考文献
Transactional Memory
 James R.Larus
 Ravi Rajwar
 ISBN1-598291-24-6

Mais conteúdo relacionado

Semelhante a 2008/02 STMの紹介

Kyoto Tycoon Guide in Japanese
Kyoto Tycoon Guide in JapaneseKyoto Tycoon Guide in Japanese
Kyoto Tycoon Guide in JapaneseMikio Hirabayashi
 
C16 45分でわかるPostgreSQLの仕組み by 山田努
C16 45分でわかるPostgreSQLの仕組み by 山田努C16 45分でわかるPostgreSQLの仕組み by 山田努
C16 45分でわかるPostgreSQLの仕組み by 山田努Insight Technology, Inc.
 
Kai = (Dynamo + memcache API) / Erlang
Kai = (Dynamo + memcache API) / ErlangKai = (Dynamo + memcache API) / Erlang
Kai = (Dynamo + memcache API) / ErlangTakeru INOUE
 
Solr meeting in Japan 2011
Solr meeting in Japan 2011Solr meeting in Japan 2011
Solr meeting in Japan 2011Takahiko Ito
 
Trema の紹介とネットワーク仮想化への応用
Trema の紹介とネットワーク仮想化への応用Trema の紹介とネットワーク仮想化への応用
Trema の紹介とネットワーク仮想化への応用kazuyas
 
Swift2.x を Scala からみる
Swift2.x を Scala からみるSwift2.x を Scala からみる
Swift2.x を Scala からみるYuichi Adachi
 
WebSocket+Akka(Remote)+Play 2.1 Java
WebSocket+Akka(Remote)+Play 2.1 JavaWebSocket+Akka(Remote)+Play 2.1 Java
WebSocket+Akka(Remote)+Play 2.1 JavaKazuhiro Hara
 
1st OCDET Baremetal MTG OpenStack baremetal compute by GMO AppsCloud
1st OCDET Baremetal MTG OpenStack baremetal compute by GMO AppsCloud1st OCDET Baremetal MTG OpenStack baremetal compute by GMO AppsCloud
1st OCDET Baremetal MTG OpenStack baremetal compute by GMO AppsCloudNaoto Gohko
 
TotalViewを使った代表的なバグに対するアプローチ
TotalViewを使った代表的なバグに対するアプローチTotalViewを使った代表的なバグに対するアプローチ
TotalViewを使った代表的なバグに対するアプローチRWSJapan
 
JOSUG 9th Study
JOSUG 9th StudyJOSUG 9th Study
JOSUG 9th Studyirix_jp
 
20101018 JJUG CCC10 WindowsAzure
20101018 JJUG CCC10 WindowsAzure20101018 JJUG CCC10 WindowsAzure
20101018 JJUG CCC10 WindowsAzureShinichiro Isago
 
エキ Py 読書会02 2010/9/7
エキ Py 読書会02 2010/9/7エキ Py 読書会02 2010/9/7
エキ Py 読書会02 2010/9/7Tetsuya Morimoto
 
20130626 kawasaki.rb NKT77
20130626 kawasaki.rb NKT7720130626 kawasaki.rb NKT77
20130626 kawasaki.rb NKT77nkt77
 
マイクラ自動化枠第1回資料
マイクラ自動化枠第1回資料マイクラ自動化枠第1回資料
マイクラ自動化枠第1回資料Ryo Fujita
 
20130626 kawasaki.rb NKT77
20130626 kawasaki.rb NKT7720130626 kawasaki.rb NKT77
20130626 kawasaki.rb NKT77nkt77
 
Operator reading and writing ( Operator SDK 編 )
Operator reading and writing ( Operator SDK 編 )Operator reading and writing ( Operator SDK 編 )
Operator reading and writing ( Operator SDK 編 )ロフト くん
 
Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Masahiro Nagano
 

Semelhante a 2008/02 STMの紹介 (19)

Kyoto Tycoon Guide in Japanese
Kyoto Tycoon Guide in JapaneseKyoto Tycoon Guide in Japanese
Kyoto Tycoon Guide in Japanese
 
C16 45分でわかるPostgreSQLの仕組み by 山田努
C16 45分でわかるPostgreSQLの仕組み by 山田努C16 45分でわかるPostgreSQLの仕組み by 山田努
C16 45分でわかるPostgreSQLの仕組み by 山田努
 
Kai = (Dynamo + memcache API) / Erlang
Kai = (Dynamo + memcache API) / ErlangKai = (Dynamo + memcache API) / Erlang
Kai = (Dynamo + memcache API) / Erlang
 
Solr meeting in Japan 2011
Solr meeting in Japan 2011Solr meeting in Japan 2011
Solr meeting in Japan 2011
 
Trema の紹介とネットワーク仮想化への応用
Trema の紹介とネットワーク仮想化への応用Trema の紹介とネットワーク仮想化への応用
Trema の紹介とネットワーク仮想化への応用
 
ATN No.2 Scala事始め
ATN No.2 Scala事始めATN No.2 Scala事始め
ATN No.2 Scala事始め
 
Swift2.x を Scala からみる
Swift2.x を Scala からみるSwift2.x を Scala からみる
Swift2.x を Scala からみる
 
Apache Arrow
Apache ArrowApache Arrow
Apache Arrow
 
WebSocket+Akka(Remote)+Play 2.1 Java
WebSocket+Akka(Remote)+Play 2.1 JavaWebSocket+Akka(Remote)+Play 2.1 Java
WebSocket+Akka(Remote)+Play 2.1 Java
 
1st OCDET Baremetal MTG OpenStack baremetal compute by GMO AppsCloud
1st OCDET Baremetal MTG OpenStack baremetal compute by GMO AppsCloud1st OCDET Baremetal MTG OpenStack baremetal compute by GMO AppsCloud
1st OCDET Baremetal MTG OpenStack baremetal compute by GMO AppsCloud
 
TotalViewを使った代表的なバグに対するアプローチ
TotalViewを使った代表的なバグに対するアプローチTotalViewを使った代表的なバグに対するアプローチ
TotalViewを使った代表的なバグに対するアプローチ
 
JOSUG 9th Study
JOSUG 9th StudyJOSUG 9th Study
JOSUG 9th Study
 
20101018 JJUG CCC10 WindowsAzure
20101018 JJUG CCC10 WindowsAzure20101018 JJUG CCC10 WindowsAzure
20101018 JJUG CCC10 WindowsAzure
 
エキ Py 読書会02 2010/9/7
エキ Py 読書会02 2010/9/7エキ Py 読書会02 2010/9/7
エキ Py 読書会02 2010/9/7
 
20130626 kawasaki.rb NKT77
20130626 kawasaki.rb NKT7720130626 kawasaki.rb NKT77
20130626 kawasaki.rb NKT77
 
マイクラ自動化枠第1回資料
マイクラ自動化枠第1回資料マイクラ自動化枠第1回資料
マイクラ自動化枠第1回資料
 
20130626 kawasaki.rb NKT77
20130626 kawasaki.rb NKT7720130626 kawasaki.rb NKT77
20130626 kawasaki.rb NKT77
 
Operator reading and writing ( Operator SDK 編 )
Operator reading and writing ( Operator SDK 編 )Operator reading and writing ( Operator SDK 編 )
Operator reading and writing ( Operator SDK 編 )
 
Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14
 

Mais de koichik

An Introduction to Guarded Horn Clauses
An Introduction to Guarded Horn ClausesAn Introduction to Guarded Horn Clauses
An Introduction to Guarded Horn Clauseskoichik
 
東京Node学園#8 Let It Crash!?
東京Node学園#8 Let It Crash!?東京Node学園#8 Let It Crash!?
東京Node学園#8 Let It Crash!?koichik
 
東京Node学園#6 文字コードと Node
東京Node学園#6 文字コードと Node東京Node学園#6 文字コードと Node
東京Node学園#6 文字コードと Nodekoichik
 
東京Node学園#3 Domains & Isolates
東京Node学園#3 Domains & Isolates東京Node学園#3 Domains & Isolates
東京Node学園#3 Domains & Isolateskoichik
 
node-handlersocket
node-handlersocketnode-handlersocket
node-handlersocketkoichik
 
東京Node学園#1「非同期プログラミングの改善」のエッセンス
東京Node学園#1「非同期プログラミングの改善」のエッセンス東京Node学園#1「非同期プログラミングの改善」のエッセンス
東京Node学園#1「非同期プログラミングの改善」のエッセンスkoichik
 
2007/02 ClearCase & UCM の紹介
2007/02 ClearCase & UCM の紹介2007/02 ClearCase & UCM の紹介
2007/02 ClearCase & UCM の紹介koichik
 

Mais de koichik (7)

An Introduction to Guarded Horn Clauses
An Introduction to Guarded Horn ClausesAn Introduction to Guarded Horn Clauses
An Introduction to Guarded Horn Clauses
 
東京Node学園#8 Let It Crash!?
東京Node学園#8 Let It Crash!?東京Node学園#8 Let It Crash!?
東京Node学園#8 Let It Crash!?
 
東京Node学園#6 文字コードと Node
東京Node学園#6 文字コードと Node東京Node学園#6 文字コードと Node
東京Node学園#6 文字コードと Node
 
東京Node学園#3 Domains & Isolates
東京Node学園#3 Domains & Isolates東京Node学園#3 Domains & Isolates
東京Node学園#3 Domains & Isolates
 
node-handlersocket
node-handlersocketnode-handlersocket
node-handlersocket
 
東京Node学園#1「非同期プログラミングの改善」のエッセンス
東京Node学園#1「非同期プログラミングの改善」のエッセンス東京Node学園#1「非同期プログラミングの改善」のエッセンス
東京Node学園#1「非同期プログラミングの改善」のエッセンス
 
2007/02 ClearCase & UCM の紹介
2007/02 ClearCase & UCM の紹介2007/02 ClearCase & UCM の紹介
2007/02 ClearCase & UCM の紹介
 

Último

論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...Toru Tamaki
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video UnderstandingToru Tamaki
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Hiroshi Tomioka
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイスCRI Japan, Inc.
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルCRI Japan, Inc.
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Gamesatsushi061452
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 

Último (11)

論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 

2008/02 STMの紹介