Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
EN
Uploaded by
y-uti
PDF, PPTX
3,468 views
Task Spooler を試した
社内勉強会での発表資料です。機械学習のジョブを流す際などに Task Spooler というツールが便利そうだと思い試してみました。使い方を簡単にまとめて紹介したものです。
Technology
◦
Read more
0
Save
Share
Embed
Embed presentation
Download
Download as PDF, PPTX
1
/ 34
2
/ 34
3
/ 34
4
/ 34
Most read
5
/ 34
6
/ 34
7
/ 34
8
/ 34
9
/ 34
Most read
10
/ 34
Most read
11
/ 34
12
/ 34
13
/ 34
14
/ 34
15
/ 34
16
/ 34
17
/ 34
18
/ 34
19
/ 34
20
/ 34
21
/ 34
22
/ 34
23
/ 34
24
/ 34
25
/ 34
26
/ 34
27
/ 34
28
/ 34
29
/ 34
30
/ 34
31
/ 34
32
/ 34
33
/ 34
34
/ 34
More Related Content
PDF
Marp Tutorial
by
Rui Watanabe
PDF
【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮
by
Hibino Hisashi
PPTX
PyTorchLightning ベース Hydra+MLFlow+Optuna による機械学習開発環境の構築
by
Kosuke Shinoda
PPTX
[DL輪読会]YOLOv4: Optimal Speed and Accuracy of Object Detection
by
Deep Learning JP
PDF
Suphx: Mastering Mahjong with Deep Reinforcement Learning
by
harmonylab
PDF
TLA+についての話
by
takahashi takahashi
PDF
Decision Transformer: Reinforcement Learning via Sequence Modeling
by
Yasunori Ozaki
PDF
ChatGPT 人間のフィードバックから強化学習した対話AI
by
Shota Imai
Marp Tutorial
by
Rui Watanabe
【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮
by
Hibino Hisashi
PyTorchLightning ベース Hydra+MLFlow+Optuna による機械学習開発環境の構築
by
Kosuke Shinoda
[DL輪読会]YOLOv4: Optimal Speed and Accuracy of Object Detection
by
Deep Learning JP
Suphx: Mastering Mahjong with Deep Reinforcement Learning
by
harmonylab
TLA+についての話
by
takahashi takahashi
Decision Transformer: Reinforcement Learning via Sequence Modeling
by
Yasunori Ozaki
ChatGPT 人間のフィードバックから強化学習した対話AI
by
Shota Imai
What's hot
PDF
「今日から使い切る」ための GNU Parallelによる並列処理入門
by
Koji Matsuda
PDF
LSTM (Long short-term memory) 概要
by
Kenji Urai
PDF
高速な倍精度指数関数expの実装
by
MITSUNARI Shigeo
PDF
ROSによる今後のロボティクスのあり方
by
Mori Ken
PDF
Transformerを多層にする際の勾配消失問題と解決法について
by
Sho Takase
PDF
Apache Arrow - データ処理ツールの次世代プラットフォーム
by
Kouhei Sutou
PPTX
initとプロセス再起動
by
Takashi Takizawa
PDF
エンジニアなら知っておきたい「仮想マシン」のしくみ v1.1 (hbstudy 17)
by
Takeshi HASEGAWA
PDF
機械学習で泣かないためのコード設計 2018
by
Takahiro Kubo
PDF
SSII2021 [OS2-01] 転移学習の基礎:異なるタスクの知識を利用するための機械学習の方法
by
SSII
PPTX
30分で分かる!OSの作り方
by
uchan_nos
PDF
スイッチ・ルータのしくみ
by
ogatay
PDF
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
by
Yahoo!デベロッパーネットワーク
PDF
最適輸送の解き方
by
joisino
PDF
Dockerセキュリティ: 今すぐ役に立つテクニックから,次世代技術まで
by
Akihiro Suda
PDF
semantic segmentation サーベイ
by
yohei okawa
PPTX
Active Convolution, Deformable Convolution ―形状・スケールを学習可能なConvolution―
by
Yosuke Shinya
PDF
例外設計における大罪
by
Takuto Wada
PDF
ros_whillとROS2対応(ROS勉強会第28回LT大会)
by
Seiya Shimizu
PDF
GAN(と強化学習との関係)
by
Masahiro Suzuki
「今日から使い切る」ための GNU Parallelによる並列処理入門
by
Koji Matsuda
LSTM (Long short-term memory) 概要
by
Kenji Urai
高速な倍精度指数関数expの実装
by
MITSUNARI Shigeo
ROSによる今後のロボティクスのあり方
by
Mori Ken
Transformerを多層にする際の勾配消失問題と解決法について
by
Sho Takase
Apache Arrow - データ処理ツールの次世代プラットフォーム
by
Kouhei Sutou
initとプロセス再起動
by
Takashi Takizawa
エンジニアなら知っておきたい「仮想マシン」のしくみ v1.1 (hbstudy 17)
by
Takeshi HASEGAWA
機械学習で泣かないためのコード設計 2018
by
Takahiro Kubo
SSII2021 [OS2-01] 転移学習の基礎:異なるタスクの知識を利用するための機械学習の方法
by
SSII
30分で分かる!OSの作り方
by
uchan_nos
スイッチ・ルータのしくみ
by
ogatay
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
by
Yahoo!デベロッパーネットワーク
最適輸送の解き方
by
joisino
Dockerセキュリティ: 今すぐ役に立つテクニックから,次世代技術まで
by
Akihiro Suda
semantic segmentation サーベイ
by
yohei okawa
Active Convolution, Deformable Convolution ―形状・スケールを学習可能なConvolution―
by
Yosuke Shinya
例外設計における大罪
by
Takuto Wada
ros_whillとROS2対応(ROS勉強会第28回LT大会)
by
Seiya Shimizu
GAN(と強化学習との関係)
by
Masahiro Suzuki
Viewers also liked
PDF
JIT for PHP を試した
by
y-uti
PDF
JIT のコードを読んでみた
by
y-uti
PDF
続Xamarinはじめました
by
Yuya Yamaki
PDF
Xamarinはじめました
by
Yuya Yamaki
PDF
Product catalog of Industrial Winch
by
Marek Daniel
PPTX
Hydraulic winch
by
Industrial Winch
PDF
introduction, drawing, calculation for winch design
by
Aman Huri
PPT
Lesson 2 Deck Equipment And Marlinspike Seamanship
by
Guilherme Azevedo
PPT
MOORING STATIONS - FOR MARITIME CADETS
by
Capt.Vivek Trivedi
JIT for PHP を試した
by
y-uti
JIT のコードを読んでみた
by
y-uti
続Xamarinはじめました
by
Yuya Yamaki
Xamarinはじめました
by
Yuya Yamaki
Product catalog of Industrial Winch
by
Marek Daniel
Hydraulic winch
by
Industrial Winch
introduction, drawing, calculation for winch design
by
Aman Huri
Lesson 2 Deck Equipment And Marlinspike Seamanship
by
Guilherme Azevedo
MOORING STATIONS - FOR MARITIME CADETS
by
Capt.Vivek Trivedi
Similar to Task Spooler を試した
PPTX
Windowsでも使えるシェル
by
Tetsuya Hasegawa
PPTX
システムパフォーマンス勉強会#5
by
shingo suzuki
PDF
並行実行制御の最適化手法
by
Sho Nakazono
PDF
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
by
Hiro H.
PDF
シンプルでシステマチックな Linux 性能分析方法
by
Yohei Azekatsu
PDF
分散メモリ環境におけるシェルスクリプトの高速化手法の提案
by
Keisuke Umeno
PDF
debugging server with strace
by
Yoshinari Takaoka
PDF
最近の PowerShell について
by
Kazuki Takai
PPT
Osc10do linux nextstep
by
smokey monkey
PDF
JobSchedulerを使ったAsakusaのジョブ管理
by
OSSラボ株式会社
Windowsでも使えるシェル
by
Tetsuya Hasegawa
システムパフォーマンス勉強会#5
by
shingo suzuki
並行実行制御の最適化手法
by
Sho Nakazono
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
by
Hiro H.
シンプルでシステマチックな Linux 性能分析方法
by
Yohei Azekatsu
分散メモリ環境におけるシェルスクリプトの高速化手法の提案
by
Keisuke Umeno
debugging server with strace
by
Yoshinari Takaoka
最近の PowerShell について
by
Kazuki Takai
Osc10do linux nextstep
by
smokey monkey
JobSchedulerを使ったAsakusaのジョブ管理
by
OSSラボ株式会社
More from y-uti
PDF
潜在ディリクレ配分法
by
y-uti
PDF
Active Object
by
y-uti
PDF
目で見る過学習と正則化
by
y-uti
PDF
ロジスティック回帰入門
by
y-uti
PDF
論文紹介 Identifying Implementation Bugs in Machine Learning based Image Classifi...
by
y-uti
PDF
PECL operator で演算子オーバーロード
by
y-uti
PDF
PHP-ML で手書き数字認識
by
y-uti
PDF
OPcache の最適化器の今
by
y-uti
PDF
スパース推定
by
y-uti
PDF
Kaggle の Titanic チュートリアルに挑戦した話
by
y-uti
PDF
PHP カンファレンス福岡 2017 参加報告
by
y-uti
PDF
分類問題 - 機械学習ライブラリ scikit-learn の活用
by
y-uti
PDF
anyenv + phpenv + php-build が便利すぎる件
by
y-uti
PDF
PHP カンファレンス福岡 参加報告
by
y-uti
PDF
RFC: "var" Deprecation
by
y-uti
PDF
最近の PHP の話
by
y-uti
PDF
Windows で拡張モジュールをビルドしてみた
by
y-uti
PDF
PECL を数えてみた
by
y-uti
PDF
Windows で PHP をビルドしてみた
by
y-uti
PDF
逐次ベイズ学習 - サンプリング近似法の場合 -
by
y-uti
潜在ディリクレ配分法
by
y-uti
Active Object
by
y-uti
目で見る過学習と正則化
by
y-uti
ロジスティック回帰入門
by
y-uti
論文紹介 Identifying Implementation Bugs in Machine Learning based Image Classifi...
by
y-uti
PECL operator で演算子オーバーロード
by
y-uti
PHP-ML で手書き数字認識
by
y-uti
OPcache の最適化器の今
by
y-uti
スパース推定
by
y-uti
Kaggle の Titanic チュートリアルに挑戦した話
by
y-uti
PHP カンファレンス福岡 2017 参加報告
by
y-uti
分類問題 - 機械学習ライブラリ scikit-learn の活用
by
y-uti
anyenv + phpenv + php-build が便利すぎる件
by
y-uti
PHP カンファレンス福岡 参加報告
by
y-uti
RFC: "var" Deprecation
by
y-uti
最近の PHP の話
by
y-uti
Windows で拡張モジュールをビルドしてみた
by
y-uti
PECL を数えてみた
by
y-uti
Windows で PHP をビルドしてみた
by
y-uti
逐次ベイズ学習 - サンプリング近似法の場合 -
by
y-uti
Task Spooler を試した
1.
Task Spooler を試した 内山
雄司 (@y__uti) 2016-09-13 社内勉強会
2.
自己紹介 内山 雄司 (@y__uti) ◦
http://y-uti.hatenablog.jp/ (phpusers-ja) 仕事 ◦ 受託開発の会社 (株式会社ピコラボ) でプログラマをしています 興味 ◦ プログラミング言語処理系 ◦ 機械学習 2016-09-13 社内勉強会 2
3.
Task Spooler http://vicerveza.homeunix.net/~viric/soft/ts/ 2016-09-13 社内勉強会
3
4.
Task Spooler とは? 簡易ジョブ管理システム的なもの Task
Spooler ができること ◦ 最大同時実行数を設定してプロセスを並列実行する ◦ プロセスの状態や実行結果を管理する ◦ プロセスの実行条件 (依存関係) を指定する Task Spooler ではできないこと ◦ 複雑なことは概ねできない ◦ ジョブの実行時刻を指定するとか (cron じゃないから) ◦ 異常終了したら通知するとか ◦ トリッキーなジョブを仕掛ければできるかもしれないが・・・ 2016-09-13 社内勉強会 4
5.
何をしてくれるのか 最大同時実行数を設定してプロセスを並列実行する 2016-09-13 社内勉強会 5 実行待ち
実行中 実行済み
6.
何をしてくれるのか 最大同時実行数を設定してプロセスを並列実行する 2016-09-13 社内勉強会 6 実行待ち
実行中 実行済み 終わった!
7.
何をしてくれるのか 最大同時実行数を設定してプロセスを並列実行する 2016-09-13 社内勉強会 7 実行待ち
実行中 実行済み 次!
8.
インストール ソースコードを取得してビルドする 2016-09-13 社内勉強会 8 $
wget http://vicerveza.homeunix.net/~viric/soft/ts/ts- 0.7.6.tar.gz $ tar xf ts-0.7.6.tar.gz $ cd ts-0.7.6 $ make $ make PREFIX=.. install ◦ インストールされるのは以下の 2 ファイル ◦ $PREFIX/bin/ts ◦ $PREFIX/share/man/man1/ts.1 ◦ ちなみに GPL version 2.0
9.
基本的な使い方 [1/2] 最大同時実行数を設定する 2016-09-13 社内勉強会
9 $ ts -S 4 ◦ 4 プロセスまで同時実行 確認 $ ts ID State Output E-Level Times(r/u/s) Command [run=0/4]
10.
基本的な使い方 [2/2] ジョブをキューに登録する 2016-09-13 社内勉強会
10 $ for i in $(seq 1 10); do ts sleep $i; done 0 1 2 3 4 5 6 7 8 9 ◦ i = 1 ~ 10 として「$i 秒 sleep する」ジョブを登録した
11.
実行の様子 キューの状態を確認する 実行直後 2016-09-13 社内勉強会 11 $
ts ID State Output E-Level Times(r/u/s) Command [run=4/4] 0 running /tmp/ts-out.sWEDhd sleep 1 1 running /tmp/ts-out.2FZb9f sleep 2 2 running /tmp/ts-out.g4nEOg sleep 3 3 running /tmp/ts-out.E7hDyg sleep 4 4 queued (file) sleep 5 5 queued (file) sleep 6 6 queued (file) sleep 7 7 queued (file) sleep 8 8 queued (file) sleep 9 9 queued (file) sleep 10
12.
実行の様子 キューの状態を確認する 1秒後 2016-09-13 社内勉強会 12 $
ts ID State Output E-Level Times(r/u/s) Command [run=4/4] 1 running /tmp/ts-out.2FZb9f sleep 2 2 running /tmp/ts-out.g4nEOg sleep 3 3 running /tmp/ts-out.E7hDyg sleep 4 4 running /tmp/ts-out.iNqnyi sleep 5 5 queued (file) sleep 6 6 queued (file) sleep 7 7 queued (file) sleep 8 8 queued (file) sleep 9 9 queued (file) sleep 10 0 finished /tmp/ts-out.sWEDhd 0 1.01/0.00/0.00 sleep 1 ◦ 一秒ごとに ts コマンドを実行しています ◦ 自動更新されるわけではない
13.
実行の様子 キューの状態を確認する 2秒後 2016-09-13 社内勉強会 13 $
ts ID State Output E-Level Times(r/u/s) Command [run=4/4] 2 running /tmp/ts-out.g4nEOg sleep 3 3 running /tmp/ts-out.E7hDyg sleep 4 4 running /tmp/ts-out.iNqnyi sleep 5 5 running /tmp/ts-out.zLJ4Ci sleep 6 6 queued (file) sleep 7 7 queued (file) sleep 8 8 queued (file) sleep 9 9 queued (file) sleep 10 0 finished /tmp/ts-out.sWEDhd 0 1.01/0.00/0.00 sleep 1 1 finished /tmp/ts-out.2FZb9f 0 2.02/0.00/0.00 sleep 2 ◦ 一秒ごとに ts コマンドを実行しています ◦ 自動更新されるわけではない
14.
実行の様子 キューの状態を確認する 3秒後 2016-09-13 社内勉強会 14 $
ts ID State Output E-Level Times(r/u/s) Command [run=4/4] 3 running /tmp/ts-out.E7hDyg sleep 4 4 running /tmp/ts-out.iNqnyi sleep 5 5 running /tmp/ts-out.zLJ4Ci sleep 6 6 running /tmp/ts-out.kjWcqk sleep 7 7 queued (file) sleep 8 8 queued (file) sleep 9 9 queued (file) sleep 10 0 finished /tmp/ts-out.sWEDhd 0 1.01/0.00/0.00 sleep 1 1 finished /tmp/ts-out.2FZb9f 0 2.02/0.00/0.00 sleep 2 2 finished /tmp/ts-out.g4nEOg 0 3.01/0.00/0.00 sleep 3 ◦ 一秒ごとに ts コマンドを実行しています ◦ 自動更新されるわけではない
15.
実行の様子 キューの状態を確認する ・・・ 2016-09-13 社内勉強会 15 $
ts ID State Output E-Level Times(r/u/s) Command [run=4/4] 4 running /tmp/ts-out.iNqnyi sleep 5 5 running /tmp/ts-out.zLJ4Ci sleep 6 6 running /tmp/ts-out.kjWcqk sleep 7 7 running /tmp/ts-out.i9BXum sleep 8 8 queued (file) sleep 9 9 queued (file) sleep 10 0 finished /tmp/ts-out.sWEDhd 0 1.01/0.00/0.00 sleep 1 1 finished /tmp/ts-out.2FZb9f 0 2.02/0.00/0.00 sleep 2 2 finished /tmp/ts-out.g4nEOg 0 3.01/0.00/0.00 sleep 3 3 finished /tmp/ts-out.E7hDyg 0 4.00/0.00/0.00 sleep 4 ◦ 一秒ごとに ts コマンドを実行しています ◦ 自動更新されるわけではない
16.
実行の様子 キューの状態を確認する ・・・ 2016-09-13 社内勉強会 16 $
ts ID State Output E-Level Times(r/u/s) Command [run=4/4] 5 running /tmp/ts-out.zLJ4Ci sleep 6 6 running /tmp/ts-out.kjWcqk sleep 7 7 running /tmp/ts-out.i9BXum sleep 8 8 running /tmp/ts-out.AWi5Dq sleep 9 9 queued (file) sleep 10 0 finished /tmp/ts-out.sWEDhd 0 1.01/0.00/0.00 sleep 1 1 finished /tmp/ts-out.2FZb9f 0 2.02/0.00/0.00 sleep 2 2 finished /tmp/ts-out.g4nEOg 0 3.01/0.00/0.00 sleep 3 3 finished /tmp/ts-out.E7hDyg 0 4.00/0.00/0.00 sleep 4 4 finished /tmp/ts-out.iNqnyi 0 5.01/0.00/0.00 sleep 5 ◦ 一秒ごとに ts コマンドを実行しています ◦ 自動更新されるわけではない
17.
実行の様子 キューの状態を確認する ・・・ 2016-09-13 社内勉強会 17 $
ts ID State Output E-Level Times(r/u/s) Command [run=4/4] 6 running /tmp/ts-out.kjWcqk sleep 7 7 running /tmp/ts-out.i9BXum sleep 8 8 running /tmp/ts-out.AWi5Dq sleep 9 9 running /tmp/ts-out.kVAX0u sleep 10 0 finished /tmp/ts-out.sWEDhd 0 1.01/0.00/0.00 sleep 1 1 finished /tmp/ts-out.2FZb9f 0 2.02/0.00/0.00 sleep 2 2 finished /tmp/ts-out.g4nEOg 0 3.01/0.00/0.00 sleep 3 3 finished /tmp/ts-out.E7hDyg 0 4.00/0.00/0.00 sleep 4 4 finished /tmp/ts-out.iNqnyi 0 5.01/0.00/0.00 sleep 5 5 finished /tmp/ts-out.zLJ4Ci 0 6.01/0.00/0.00 sleep 6 ◦ 一秒ごとに ts コマンドを実行しています ◦ 自動更新されるわけではない
18.
実行の様子 キューの状態を確認する ・・・ 2016-09-13 社内勉強会 18 $
ts ID State Output E-Level Times(r/u/s) Command [run=3/4] 7 running /tmp/ts-out.i9BXum sleep 8 8 running /tmp/ts-out.AWi5Dq sleep 9 9 running /tmp/ts-out.kVAX0u sleep 10 0 finished /tmp/ts-out.sWEDhd 0 1.01/0.00/0.00 sleep 1 1 finished /tmp/ts-out.2FZb9f 0 2.02/0.00/0.00 sleep 2 2 finished /tmp/ts-out.g4nEOg 0 3.01/0.00/0.00 sleep 3 3 finished /tmp/ts-out.E7hDyg 0 4.00/0.00/0.00 sleep 4 4 finished /tmp/ts-out.iNqnyi 0 5.01/0.00/0.00 sleep 5 5 finished /tmp/ts-out.zLJ4Ci 0 6.01/0.00/0.00 sleep 6 6 finished /tmp/ts-out.kjWcqk 0 7.00/0.00/0.00 sleep 7 ◦ 一秒ごとに ts コマンドを実行しています ◦ 自動更新されるわけではない
19.
実行の様子 キューの状態を確認する ・・・ 2016-09-13 社内勉強会 19 $
ts ID State Output E-Level Times(r/u/s) Command [run=2/4] 8 running /tmp/ts-out.AWi5Dq sleep 9 9 running /tmp/ts-out.kVAX0u sleep 10 0 finished /tmp/ts-out.sWEDhd 0 1.01/0.00/0.00 sleep 1 1 finished /tmp/ts-out.2FZb9f 0 2.02/0.00/0.00 sleep 2 2 finished /tmp/ts-out.g4nEOg 0 3.01/0.00/0.00 sleep 3 3 finished /tmp/ts-out.E7hDyg 0 4.00/0.00/0.00 sleep 4 4 finished /tmp/ts-out.iNqnyi 0 5.01/0.00/0.00 sleep 5 5 finished /tmp/ts-out.zLJ4Ci 0 6.01/0.00/0.00 sleep 6 6 finished /tmp/ts-out.kjWcqk 0 7.00/0.00/0.00 sleep 7 7 finished /tmp/ts-out.i9BXum 0 8.01/0.00/0.00 sleep 8 ◦ 一秒ごとに ts コマンドを実行しています ◦ 自動更新されるわけではない
20.
実行の様子 キューの状態を確認する ・・・ 2016-09-13 社内勉強会 20 $
ts ID State Output E-Level Times(r/u/s) Command [run=1/4] 9 running /tmp/ts-out.kVAX0u sleep 10 0 finished /tmp/ts-out.sWEDhd 0 1.01/0.00/0.00 sleep 1 1 finished /tmp/ts-out.2FZb9f 0 2.02/0.00/0.00 sleep 2 2 finished /tmp/ts-out.g4nEOg 0 3.01/0.00/0.00 sleep 3 3 finished /tmp/ts-out.E7hDyg 0 4.00/0.00/0.00 sleep 4 4 finished /tmp/ts-out.iNqnyi 0 5.01/0.00/0.00 sleep 5 5 finished /tmp/ts-out.zLJ4Ci 0 6.01/0.00/0.00 sleep 6 6 finished /tmp/ts-out.kjWcqk 0 7.00/0.00/0.00 sleep 7 7 finished /tmp/ts-out.i9BXum 0 8.01/0.00/0.00 sleep 8 8 finished /tmp/ts-out.AWi5Dq 0 9.00/0.00/0.00 sleep 9 ◦ 一秒ごとに ts コマンドを実行しています ◦ 自動更新されるわけではない
21.
実行の様子 キューの状態を確認する 終わり 2016-09-13 社内勉強会 21 $
ts ID State Output E-Level Times(r/u/s) Command [run=0/4] 0 finished /tmp/ts-out.sWEDhd 0 1.01/0.00/0.00 sleep 1 1 finished /tmp/ts-out.2FZb9f 0 2.02/0.00/0.00 sleep 2 2 finished /tmp/ts-out.g4nEOg 0 3.01/0.00/0.00 sleep 3 3 finished /tmp/ts-out.E7hDyg 0 4.00/0.00/0.00 sleep 4 4 finished /tmp/ts-out.iNqnyi 0 5.01/0.00/0.00 sleep 5 5 finished /tmp/ts-out.zLJ4Ci 0 6.01/0.00/0.00 sleep 6 6 finished /tmp/ts-out.kjWcqk 0 7.00/0.00/0.00 sleep 7 7 finished /tmp/ts-out.i9BXum 0 8.01/0.00/0.00 sleep 8 8 finished /tmp/ts-out.AWi5Dq 0 9.00/0.00/0.00 sleep 9 9 finished /tmp/ts-out.kVAX0u 0 10.00/0.00/0.00 sleep 10 ◦ 一秒ごとに ts コマンドを実行しています ◦ 自動更新されるわけではない
22.
ts のオプション [1/3] ジョブの情報を確認する 2016-09-13
社内勉強会 22 オプション 意味 -t [id] 指定されたジョブの出力を tail -f する -c [id] 指定されたジョブの出力を cat する -p [id] 指定されたジョブのプロセス ID を表示する -o [id] 指定されたジョブの出力ファイル名を表示する -i [id] 指定されたジョブの情報を表示する -s [id] 指定されたジョブの状態を表示する
23.
ts -i [id] 指定されたジョブの情報を表示する 2016-09-13
社内勉強会 23 $ ts -i 3 Exit status: died with exit code 0 Command: sleep 4 Slots required: 1 Enqueue time: Mon Sep 12 22:07:56 2016 Start time: Mon Sep 12 22:07:56 2016 End time: Mon Sep 12 22:08:00 2016 Time run: 4.004059s
24.
ts のオプション [2/3] ジョブの実行を制御する 2016-09-13
社内勉強会 24 オプション 意味 -r [id] 指定されたジョブをキューから取り除く -w [id] 指定されたジョブが終わるまで待つ -k [id] 指定されたジョブを kill する (SIGTERM) -u [id] 指定されたジョブをキューの先頭に移動する -U <id>-<id> 指定された二つのジョブの位置を入れ替える
25.
ts のオプション [3/3] ジョブを登録するときのオプション 2016-09-13
社内勉強会 25 オプション 意味 -n ジョブの出力をファイルに保存しない -E ジョブの標準出力と標準エラーを分けて出力する -g ジョブの出力を gzip する -f バックグラウンドで fork しない (未確認) -m ジョブの出力をメールで送信する (未確認) -d 直前のジョブが正常終了したときだけ実行する -D <id> 指定されたジョブが正常終了したときだけ実行する -L <lab> ジョブに名前を付ける -N <num> ジョブが使うスロット数を指定する
26.
ts -D [id] 指定されたジョブが正常終了したときだけ実行する 2016-09-13
社内勉強会 26 $ ts -S 2 $ ts sleep 20 0 $ ts sleep 10 1 $ ts -D 0 sleep 5 2 $ ts sleep 5 3 ◦ ID = 2 のジョブは ID = 0 のジョブが正常終了したら実行が始まる
27.
実行の様子 実行直後 2016-09-13 社内勉強会 27 $
ts ID State Output E-Level Times(r/u/s) Command [run=2/2] 0 running /tmp/ts-out.flebwV sleep 20 1 running /tmp/ts-out.RGTygW sleep 10 2 queued (file) [0]&& sleep 5 3 queued (file) sleep 5
28.
実行の様子 10 秒後 2016-09-13 社内勉強会
28 $ ts ID State Output E-Level Times(r/u/s) Command [run=2/2] 0 running /tmp/ts-out.flebwV sleep 20 2 queued (file) [0]&& sleep 5 3 running /tmp/ts-out.4MUpNi sleep 5 1 finished /tmp/ts-out.RGTygW 0 10.01/0.00/0.00 sleep 10 ◦ ID = 1 のジョブが終了する ◦ ID = 2 のジョブは ID = 0 を待っているので実行が開始されない ◦ ID = 3 のジョブの実行が開始される
29.
実行の様子 15 秒後 2016-09-13 社内勉強会
29 $ ts ID State Output E-Level Times(r/u/s) Command [run=1/2] 0 running /tmp/ts-out.flebwV sleep 20 2 queued (file) [0]&& sleep 5 1 finished /tmp/ts-out.RGTygW 0 10.01/0.00/0.00 sleep 10 3 finished /tmp/ts-out.4MUpNi 0 5.01/0.00/0.00 sleep 5 ◦ ID = 3 のジョブが終了する ◦ ID = 2 のジョブは ID = 0 を待っているので実行が開始されない
30.
実行の様子 20 秒後 2016-09-13 社内勉強会
30 $ ts ID State Output E-Level Times(r/u/s) Command [run=1/2] 2 running /tmp/ts-out.c9eVnz [0]&& sleep 5 1 finished /tmp/ts-out.RGTygW 0 10.01/0.00/0.00 sleep 10 3 finished /tmp/ts-out.4MUpNi 0 5.01/0.00/0.00 sleep 5 0 finished /tmp/ts-out.flebwV 0 20.01/0.00/0.00 sleep 20 ◦ ID = 0 のジョブが終了する ◦ ID = 2 のジョブの実行が開始される
31.
実行の様子 25 秒後 2016-09-13 社内勉強会
31 $ ts ID State Output E-Level Times(r/u/s) Command [run=0/2] 1 finished /tmp/ts-out.RGTygW 0 10.01/0.00/0.00 sleep 10 3 finished /tmp/ts-out.4MUpNi 0 5.01/0.00/0.00 sleep 5 0 finished /tmp/ts-out.flebwV 0 20.01/0.00/0.00 sleep 20 2 finished /tmp/ts-out.c9eVnz 0 5.01/0.00/0.00 [0]&& sleep 5 ◦ ID = 2 のジョブが終了する
32.
ところで -D って複数指定できるの? ◦ できない! ◦
右図のような制御ができない プログラムを修正すればできる ◦ 実際できた ◦ -D の値を int で持っているのを 配列に変更するだけ 2016-09-13 社内勉強会 32 ここができない!
33.
ts の後片付け バックグラウンドの ts
サーバプロセスを終了する 2016-09-13 社内勉強会 33 $ ts -K ◦ 必要になったとき (ジョブを登録したとき等) に自動起動している
34.
おわり 詳細は ts -h 説明していないオプションもあるよ 2016-09-13
社内勉強会 34
Download