1{ 2 "cells": [ 3 { 4 "cell_type": "code", 5 "execution_count": 1, 6 "metadata": { 7 "collapsed": false 8 }, 9 "outputs": [], 10 "source": [ 11 "import trappy\n", 12 "from trappy import ftrace\n", 13 "from trappy.ftrace import GenericFTrace\n", 14 "import numpy as np\n", 15 "import pandas" 16 ] 17 }, 18 { 19 "cell_type": "code", 20 "execution_count": 2, 21 "metadata": { 22 "collapsed": true 23 }, 24 "outputs": [], 25 "source": [ 26 "lines = [\n", 27 "\" adbd-5709 [007] 2943.184105: sched_contrib_scale_f: cpu=7 cpu_scale_factor=1\\n\"\n", 28 "\" adbd-5709 [007] 2943.184105: sched_load_avg_cpu: cpu=7 util_avg=825\\n\"\n", 29 "\" ->transport-5713 [006] 2943.184106: sched_load_avg_cpu: cpu=6 util_avg=292\\n\"\n", 30 "\" ->transport-5713 [006] 2943.184107: sched_contrib_scale_f: cpu=6 cpu_scale_factor=2\\n\"\n", 31 "\" adbd-5709 [007] 2943.184108: sched_load_avg_cpu: cpu=7 util_avg=850\\n\"\n", 32 "\" adbd-5709 [007] 2943.184109: sched_contrib_scale_f: cpu=7 cpu_scale_factor=3\\n\"\n", 33 "\" adbd-5709 [007] 2943.184110: sched_load_avg_cpu: cpu=6 util_avg=315\\n\"\n", 34 "]" 35 ] 36 }, 37 { 38 "cell_type": "code", 39 "execution_count": 3, 40 "metadata": { 41 "collapsed": true 42 }, 43 "outputs": [], 44 "source": [ 45 "with open('/tmp/trappy_mergedf_example.txt', 'w') as fh:\n", 46 " for line in lines:\n", 47 " fh.write(line)" 48 ] 49 }, 50 { 51 "cell_type": "code", 52 "execution_count": 4, 53 "metadata": { 54 "collapsed": false 55 }, 56 "outputs": [ 57 { 58 "name": "stdout", 59 "output_type": "stream", 60 "text": [ 61 " adbd-5709 [007] 2943.184105: sched_contrib_scale_f: cpu=7 cpu_scale_factor=1\r\n", 62 " adbd-5709 [007] 2943.184105: sched_load_avg_cpu: cpu=7 util_avg=825\r\n", 63 " ->transport-5713 [006] 2943.184106: sched_load_avg_cpu: cpu=6 util_avg=292\r\n", 64 " ->transport-5713 [006] 2943.184107: sched_contrib_scale_f: cpu=6 cpu_scale_factor=2\r\n", 65 " adbd-5709 [007] 2943.184108: sched_load_avg_cpu: cpu=7 util_avg=850\r\n", 66 " adbd-5709 [007] 2943.184109: sched_contrib_scale_f: cpu=7 cpu_scale_factor=3\r\n", 67 " adbd-5709 [007] 2943.184110: sched_load_avg_cpu: cpu=6 util_avg=315\r\n" 68 ] 69 } 70 ], 71 "source": [ 72 "!cat /tmp/trappy_mergedf_example.txt" 73 ] 74 }, 75 { 76 "cell_type": "code", 77 "execution_count": 5, 78 "metadata": { 79 "collapsed": true 80 }, 81 "outputs": [], 82 "source": [ 83 "trace = ftrace.FTrace('/tmp/trappy_mergedf_example.txt', events=['sched_contrib_scale_f', 'sched_load_avg_cpu'], normalize_time=False)" 84 ] 85 }, 86 { 87 "cell_type": "code", 88 "execution_count": 6, 89 "metadata": { 90 "collapsed": false 91 }, 92 "outputs": [ 93 { 94 "data": { 95 "text/html": [ 96 "<div>\n", 97 "<table border=\"1\" class=\"dataframe\">\n", 98 " <thead>\n", 99 " <tr style=\"text-align: right;\">\n", 100 " <th></th>\n", 101 " <th>cpu</th>\n", 102 " <th>util_avg</th>\n", 103 " <th>__line</th>\n", 104 " </tr>\n", 105 " <tr>\n", 106 " <th>Time</th>\n", 107 " <th></th>\n", 108 " <th></th>\n", 109 " <th></th>\n", 110 " </tr>\n", 111 " </thead>\n", 112 " <tbody>\n", 113 " <tr>\n", 114 " <th>2943.184105</th>\n", 115 " <td>7</td>\n", 116 " <td>825</td>\n", 117 " <td>1</td>\n", 118 " </tr>\n", 119 " <tr>\n", 120 " <th>2943.184106</th>\n", 121 " <td>6</td>\n", 122 " <td>292</td>\n", 123 " <td>2</td>\n", 124 " </tr>\n", 125 " <tr>\n", 126 " <th>2943.184108</th>\n", 127 " <td>7</td>\n", 128 " <td>850</td>\n", 129 " <td>4</td>\n", 130 " </tr>\n", 131 " <tr>\n", 132 " <th>2943.184110</th>\n", 133 " <td>6</td>\n", 134 " <td>315</td>\n", 135 " <td>6</td>\n", 136 " </tr>\n", 137 " </tbody>\n", 138 "</table>\n", 139 "</div>" 140 ], 141 "text/plain": [ 142 " cpu util_avg __line\n", 143 "Time \n", 144 "2943.184105 7 825 1\n", 145 "2943.184106 6 292 2\n", 146 "2943.184108 7 850 4\n", 147 "2943.184110 6 315 6" 148 ] 149 }, 150 "execution_count": 6, 151 "metadata": {}, 152 "output_type": "execute_result" 153 } 154 ], 155 "source": [ 156 "df1 = trace.sched_load_avg_cpu.data_frame[['cpu', 'util_avg', '__line']]\n", 157 "df1" 158 ] 159 }, 160 { 161 "cell_type": "code", 162 "execution_count": 7, 163 "metadata": { 164 "collapsed": false 165 }, 166 "outputs": [ 167 { 168 "data": { 169 "text/html": [ 170 "<div>\n", 171 "<table border=\"1\" class=\"dataframe\">\n", 172 " <thead>\n", 173 " <tr style=\"text-align: right;\">\n", 174 " <th></th>\n", 175 " <th>cpu</th>\n", 176 " <th>cpu_scale_factor</th>\n", 177 " <th>__line</th>\n", 178 " </tr>\n", 179 " <tr>\n", 180 " <th>Time</th>\n", 181 " <th></th>\n", 182 " <th></th>\n", 183 " <th></th>\n", 184 " </tr>\n", 185 " </thead>\n", 186 " <tbody>\n", 187 " <tr>\n", 188 " <th>2943.184105</th>\n", 189 " <td>7</td>\n", 190 " <td>1</td>\n", 191 " <td>0</td>\n", 192 " </tr>\n", 193 " <tr>\n", 194 " <th>2943.184107</th>\n", 195 " <td>6</td>\n", 196 " <td>2</td>\n", 197 " <td>3</td>\n", 198 " </tr>\n", 199 " <tr>\n", 200 " <th>2943.184109</th>\n", 201 " <td>7</td>\n", 202 " <td>3</td>\n", 203 " <td>5</td>\n", 204 " </tr>\n", 205 " </tbody>\n", 206 "</table>\n", 207 "</div>" 208 ], 209 "text/plain": [ 210 " cpu cpu_scale_factor __line\n", 211 "Time \n", 212 "2943.184105 7 1 0\n", 213 "2943.184107 6 2 3\n", 214 "2943.184109 7 3 5" 215 ] 216 }, 217 "execution_count": 7, 218 "metadata": {}, 219 "output_type": "execute_result" 220 } 221 ], 222 "source": [ 223 "df2 = trace.sched_contrib_scale_f.data_frame[['cpu', 'cpu_scale_factor', '__line']]\n", 224 "df2" 225 ] 226 }, 227 { 228 "cell_type": "code", 229 "execution_count": 8, 230 "metadata": { 231 "collapsed": false, 232 "scrolled": true 233 }, 234 "outputs": [ 235 { 236 "name": "stderr", 237 "output_type": "stream", 238 "text": [ 239 "/home/joelaf/repo/lisa-aosp/external/trappy/trappy/utils.py:154: FutureWarning: sort(columns=....) is deprecated, use sort_values(by=.....)\n", 240 " df = pd.concat([pr_df, sec_df], keys=['primary', 'secondary']).sort(columns='__line')\n" 241 ] 242 }, 243 { 244 "data": { 245 "text/html": [ 246 "<div>\n", 247 "<table border=\"1\" class=\"dataframe\">\n", 248 " <thead>\n", 249 " <tr style=\"text-align: right;\">\n", 250 " <th></th>\n", 251 " <th>__line</th>\n", 252 " <th>cpu</th>\n", 253 " <th>cpu_scale_factor</th>\n", 254 " <th>util_avg</th>\n", 255 " </tr>\n", 256 " <tr>\n", 257 " <th>Time</th>\n", 258 " <th></th>\n", 259 " <th></th>\n", 260 " <th></th>\n", 261 " <th></th>\n", 262 " </tr>\n", 263 " </thead>\n", 264 " <tbody>\n", 265 " <tr>\n", 266 " <th>2943.184105</th>\n", 267 " <td>1</td>\n", 268 " <td>7</td>\n", 269 " <td>1.0</td>\n", 270 " <td>825.0</td>\n", 271 " </tr>\n", 272 " <tr>\n", 273 " <th>2943.184106</th>\n", 274 " <td>2</td>\n", 275 " <td>6</td>\n", 276 " <td>NaN</td>\n", 277 " <td>292.0</td>\n", 278 " </tr>\n", 279 " <tr>\n", 280 " <th>2943.184108</th>\n", 281 " <td>4</td>\n", 282 " <td>7</td>\n", 283 " <td>1.0</td>\n", 284 " <td>850.0</td>\n", 285 " </tr>\n", 286 " <tr>\n", 287 " <th>2943.184110</th>\n", 288 " <td>6</td>\n", 289 " <td>6</td>\n", 290 " <td>2.0</td>\n", 291 " <td>315.0</td>\n", 292 " </tr>\n", 293 " </tbody>\n", 294 "</table>\n", 295 "</div>" 296 ], 297 "text/plain": [ 298 " __line cpu cpu_scale_factor util_avg\n", 299 "Time \n", 300 "2943.184105 1 7 1.0 825.0\n", 301 "2943.184106 2 6 NaN 292.0\n", 302 "2943.184108 4 7 1.0 850.0\n", 303 "2943.184110 6 6 2.0 315.0" 304 ] 305 }, 306 "execution_count": 8, 307 "metadata": {}, 308 "output_type": "execute_result" 309 } 310 ], 311 "source": [ 312 "trappy.utils.merge_dfs(df1, df2, 'cpu')" 313 ] 314 }, 315 { 316 "cell_type": "code", 317 "execution_count": null, 318 "metadata": { 319 "collapsed": true 320 }, 321 "outputs": [], 322 "source": [] 323 } 324 ], 325 "metadata": { 326 "gist": { 327 "data": { 328 "description": "TRAPpy_MergeDF_API_Example", 329 "public": false 330 }, 331 "id": "" 332 }, 333 "hide_input": false, 334 "kernelspec": { 335 "display_name": "Python 2", 336 "language": "python", 337 "name": "python2" 338 }, 339 "language_info": { 340 "codemirror_mode": { 341 "name": "ipython", 342 "version": 2 343 }, 344 "file_extension": ".py", 345 "mimetype": "text/x-python", 346 "name": "python", 347 "nbconvert_exporter": "python", 348 "pygments_lexer": "ipython2", 349 "version": "2.7.13" 350 }, 351 "toc": { 352 "colors": { 353 "hover_highlight": "#DAA520", 354 "running_highlight": "#FF0000", 355 "selected_highlight": "#FFD700" 356 }, 357 "moveMenuLeft": true, 358 "nav_menu": { 359 "height": "12px", 360 "width": "252px" 361 }, 362 "navigate_menu": true, 363 "number_sections": true, 364 "sideBar": true, 365 "threshold": 4, 366 "toc_cell": false, 367 "toc_section_display": "block", 368 "toc_window_display": false 369 } 370 }, 371 "nbformat": 4, 372 "nbformat_minor": 1 373} 374