- Optunaというハイパーパラメータ最適化ツールを使って、RocksDB(組み込みDB・KVS)のパフォーマンスチューニングを試してみた際の結果メモ
- 対象となるワークロードに対して、最適な性能を発揮するパラメータ群を自動で見つけ出すのが目的
- 結果としては、デフォルトパラメータをそのまま使った場合に比べて、かなり良い性能が得られるパラメータ群を見つけることができた:
- デフォルトでのベンチマークの所要時間: 372秒
- Optunaによる最適化後のパラメータでの所要時間: 30秒
モチベーション
| // MIT License | |
| // | |
| // Copyright (c) 2019 Simon Lightfoot | |
| // | |
| // Permission is hereby granted, free of charge, to any person obtaining a copy | |
| // of this software and associated documentation files (the "Software"), to deal | |
| // in the Software without restriction, including without limitation the rights | |
| // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | |
| // copies of the Software, and to permit persons to whom the Software is | |
| // furnished to do so, subject to the following conditions: |
| Debug SHA1 (root of project) | |
| keytool -J-Duser.language=en -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android | |
| Release SHA1 (/android/app/) | |
| keytool -J-Duser.language=en -list -v -keystore mystore.keystore |
| import com.android.volley.AuthFailureError; | |
| import com.android.volley.NetworkResponse; | |
| import com.android.volley.Request; | |
| import com.android.volley.Response; | |
| import com.android.volley.VolleyLog; | |
| import org.apache.http.HttpEntity; | |
| import org.apache.http.entity.mime.MultipartEntityBuilder; | |
| import org.apache.http.entity.mime.content.FileBody; |
| # see http://d.hatena.ne.jp/holidays-l/20110823/p1 | |
| define MAKETEST | |
| for pkg in $$(for f in $$(find ./adstir -name *_test.go); do echo $${f%/*}; done |sort -u) | |
| do | |
| gom test $$pkg | |
| done | |
| endef | |
| export MAKETEST | |
| test: | |
| @echo "$${MAKETEST}" > /tmp/$$$$ ; $(SHELL) /tmp/$$$$ ; rm -f /tmp/$$$$ |
| -- landing page access ranking analysis using Treasure Data | |
| SELECT first_path, COUNT(1) AS count | |
| FROM ( | |
| SELECT TD_SESSIONIZE(time, 3600, host) AS session_id, TD_FIRST(path, time) AS first_path | |
| FROM ( | |
| SELECT time, v['host'] as host, v['path'] as path | |
| FROM www_access | |
| DISTRIBUTE BY v['host'] | |
| SORT BY v['host'], v['time'] | |
| ) ss |
| import datetime | |
| import arrow | |
| from fabric.api import * | |
| import boto | |
| from boto.cloudfront import CloudFrontConnection | |
| import os | |
| from datetime import date, timedelta | |
| import gzip | |
| import shutil |