|
295 | 295 | "cell_type": "markdown", |
296 | 296 | "metadata": {}, |
297 | 297 | "source": [ |
298 | | - "### Configurations" |
| 298 | + "### Imports" |
299 | 299 | ] |
300 | 300 | }, |
301 | 301 | { |
302 | 302 | "cell_type": "code", |
303 | | - "execution_count": 2, |
| 303 | + "execution_count": 4, |
304 | 304 | "metadata": {}, |
305 | 305 | "outputs": [], |
306 | 306 | "source": [ |
307 | | - "# Benchmark configurations\n", |
308 | | - "metric_names = ['cpu_utilization', 'latency', 'packet_loss', 'throughput']\n", |
309 | | - "nlargest = 10" |
| 307 | + "import os\n", |
| 308 | + "import yaml\n", |
| 309 | + "import time\n", |
| 310 | + "import datetime\n", |
| 311 | + "import json\n", |
| 312 | + "import itertools\n", |
| 313 | + "\n", |
| 314 | + "# Generator\n", |
| 315 | + "from v3io_generator import metrics_generator, deployment_generator\n", |
| 316 | + "\n", |
| 317 | + "# Dataframes\n", |
| 318 | + "import cudf\n", |
| 319 | + "import pandas as pd" |
310 | 320 | ] |
311 | 321 | }, |
312 | 322 | { |
313 | 323 | "cell_type": "markdown", |
314 | 324 | "metadata": {}, |
315 | 325 | "source": [ |
316 | | - "### Imports" |
| 326 | + "### Configurations" |
317 | 327 | ] |
318 | 328 | }, |
319 | 329 | { |
320 | 330 | "cell_type": "code", |
321 | | - "execution_count": 1, |
| 331 | + "execution_count": 5, |
322 | 332 | "metadata": {}, |
323 | 333 | "outputs": [], |
324 | 334 | "source": [ |
325 | | - "import os\n", |
326 | | - "import yaml\n", |
327 | | - "import time\n", |
328 | | - "import datetime\n", |
329 | | - "import json\n", |
330 | | - "import itertools\n", |
| 335 | + "# Benchmark configurations\n", |
| 336 | + "metric_names = ['cpu_utilization', 'latency', 'packet_loss', 'throughput']\n", |
| 337 | + "nlargest = 10\n", |
| 338 | + "source_file = os.path.join(os.getcwd(), 'data', 'ops.logs') # Use full path\n", |
331 | 339 | "\n", |
332 | | - "# Generator\n", |
333 | | - "from v3io_generator import metrics_generator, deployment_generator\n", |
334 | 340 | "\n", |
335 | | - "# Dataframes\n", |
336 | | - "import cudf\n", |
337 | | - "import pandas as pd" |
| 341 | + "os.environ['SOURCE_PATH'] = source_file # Expose for display\n", |
| 342 | + "os.environ['SOURCE_DIR'] = os.path.dirname(source_file) # Expose for display\n", |
| 343 | + "os.environ['SOURCE_FILE'] = os.path.basename(source_file) # Expose for display" |
338 | 344 | ] |
339 | 345 | }, |
340 | 346 | { |
|
434 | 440 | "4 Carr-Reyes 0 0 0 0" |
435 | 441 | ] |
436 | 442 | }, |
437 | | - "execution_count": 6, |
| 443 | + "execution_count": 7, |
438 | 444 | "metadata": {}, |
439 | 445 | "output_type": "execute_result" |
440 | 446 | } |
|
457 | 463 | "deployment_df.head()" |
458 | 464 | ] |
459 | 465 | }, |
| 466 | + { |
| 467 | + "cell_type": "markdown", |
| 468 | + "metadata": {}, |
| 469 | + "source": [ |
| 470 | + "Specify metrics configuration for the generator" |
| 471 | + ] |
| 472 | + }, |
460 | 473 | { |
461 | 474 | "cell_type": "code", |
462 | | - "execution_count": 7, |
| 475 | + "execution_count": 8, |
463 | 476 | "metadata": {}, |
464 | 477 | "outputs": [], |
465 | 478 | "source": [ |
|
515 | 528 | ] |
516 | 529 | }, |
517 | 530 | { |
518 | | - "cell_type": "code", |
519 | | - "execution_count": 8, |
| 531 | + "cell_type": "markdown", |
520 | 532 | "metadata": {}, |
521 | | - "outputs": [], |
522 | 533 | "source": [ |
523 | | - "met_gen = metrics_generator.Generator_df(metrics_configuration, \n", |
524 | | - " user_hierarchy=deployment_df, \n", |
525 | | - " initial_timestamp=time.time())" |
| 534 | + "Create the data according to the given hierarchy and metrics configuration" |
526 | 535 | ] |
527 | 536 | }, |
528 | 537 | { |
|
531 | 540 | "metadata": {}, |
532 | 541 | "outputs": [], |
533 | 542 | "source": [ |
534 | | - "source_file = '/tmp/ops.logs'\n", |
| 543 | + "met_gen = metrics_generator.Generator_df(metrics_configuration, \n", |
| 544 | + " user_hierarchy=deployment_df, \n", |
| 545 | + " initial_timestamp=time.time())\n", |
| 546 | + "\n", |
535 | 547 | "metrics = met_gen.generate_range(start_time=datetime.datetime.now(),\n", |
536 | 548 | " end_time=datetime.datetime.now()+datetime.timedelta(hours=62),\n", |
537 | 549 | " as_df=True,\n", |
538 | 550 | " as_iterator=False)\n", |
539 | 551 | "\n", |
| 552 | + "# Verify source file directory exists\n", |
| 553 | + "os.makedirs(os.path.dirname(source_file), exist_ok=1)\n", |
| 554 | + "\n", |
540 | 555 | "# Generate file from metrics\n", |
541 | 556 | "with open(source_file, 'w') as f:\n", |
542 | | - " metrics_batch = metrics\n", |
| 557 | + " metrics_batch = metric_names\n", |
543 | 558 | " metrics_batch.to_json(f,\n", |
544 | 559 | " orient='records',\n", |
545 | 560 | " lines=True)" |
|
562 | 577 | "name": "stdout", |
563 | 578 | "output_type": "stream", |
564 | 579 | "text": [ |
565 | | - "total 0\n", |
566 | | - "drwxr-xr-x 2 50 nogroup 0 Jul 22 11:32 .ipynb_checkpoints\n", |
567 | | - "-rw-r--r-- 1 50 nogroup 1.2G Jul 22 07:17 ops-1gb.logs\n", |
568 | | - "-rw-r--r-- 1 50 nogroup 1.2G Jul 22 11:40 ops.logs\n" |
| 580 | + "-rw-r--r-- 1 50 nogroup 1.2G Aug 13 11:00 ops.logs\n" |
569 | 581 | ] |
570 | 582 | } |
571 | 583 | ], |
572 | 584 | "source": [ |
573 | | - "!ls -lah data" |
| 585 | + "!ls -lah ${SOURCE_DIR} | grep ${SOURCE_FILE}" |
574 | 586 | ] |
575 | 587 | }, |
576 | 588 | { |
|
582 | 594 | "name": "stdout", |
583 | 595 | "output_type": "stream", |
584 | 596 | "text": [ |
585 | | - "{\"company\":\"Rios__Pope_and_Baird\",\"cpu_utilization\":70.6942165035,\"cpu_utilization_is_error\":false,\"latency\":3.1373003261,\"latency_is_error\":false,\"packet_loss\":0.0,\"packet_loss_is_error\":false,\"throughput\":249.7207880994,\"throughput_is_error\":false,\"timestamp\":1563795193534}\n", |
586 | | - "{\"company\":\"Ross__Calderon_and_Brown\",\"cpu_utilization\":56.540474522,\"cpu_utilization_is_error\":false,\"latency\":0.0,\"latency_is_error\":false,\"packet_loss\":0.0,\"packet_loss_is_error\":false,\"throughput\":261.9362588938,\"throughput_is_error\":false,\"timestamp\":1563795193534}\n", |
587 | | - "{\"company\":\"Jackson_PLC\",\"cpu_utilization\":75.7476859549,\"cpu_utilization_is_error\":false,\"latency\":0.0,\"latency_is_error\":false,\"packet_loss\":1.3991427041,\"packet_loss_is_error\":false,\"throughput\":221.8819458316,\"throughput_is_error\":false,\"timestamp\":1563795193534}\n", |
588 | | - "{\"company\":\"Reyes_Group\",\"cpu_utilization\":61.4657850595,\"cpu_utilization_is_error\":false,\"latency\":0.0,\"latency_is_error\":false,\"packet_loss\":1.7039267608,\"packet_loss_is_error\":false,\"throughput\":232.4317426357,\"throughput_is_error\":false,\"timestamp\":1563795193534}\n", |
589 | | - "{\"company\":\"Carr-Reyes\",\"cpu_utilization\":49.9688296158,\"cpu_utilization_is_error\":false,\"latency\":0.4559851085,\"latency_is_error\":false,\"packet_loss\":0.0,\"packet_loss_is_error\":false,\"throughput\":276.0540712289,\"throughput_is_error\":false,\"timestamp\":1563795193534}\n", |
590 | | - "{\"company\":\"Wilson_and_Sons\",\"cpu_utilization\":66.0718786965,\"cpu_utilization_is_error\":false,\"latency\":0.0,\"latency_is_error\":false,\"packet_loss\":0.2971395649,\"packet_loss_is_error\":false,\"throughput\":264.7801359998,\"throughput_is_error\":false,\"timestamp\":1563795193534}\n", |
591 | | - "{\"company\":\"Nolan__Norton_and_Best\",\"cpu_utilization\":63.0572487273,\"cpu_utilization_is_error\":false,\"latency\":0.0,\"latency_is_error\":false,\"packet_loss\":0.0,\"packet_loss_is_error\":false,\"throughput\":264.033448601,\"throughput_is_error\":false,\"timestamp\":1563795193534}\n", |
592 | | - "{\"company\":\"Brandt_LLC\",\"cpu_utilization\":90.6382973539,\"cpu_utilization_is_error\":false,\"latency\":1.9411864095,\"latency_is_error\":false,\"packet_loss\":2.527867727,\"packet_loss_is_error\":false,\"throughput\":232.8742238776,\"throughput_is_error\":false,\"timestamp\":1563795193534}\n", |
593 | | - "{\"company\":\"Williams-Collins\",\"cpu_utilization\":64.1690341745,\"cpu_utilization_is_error\":false,\"latency\":0.0,\"latency_is_error\":false,\"packet_loss\":3.2983607178,\"packet_loss_is_error\":false,\"throughput\":264.0176356426,\"throughput_is_error\":false,\"timestamp\":1563795193534}\n", |
594 | | - "{\"company\":\"Williams__Hutchinson_and_Harrison\",\"cpu_utilization\":60.6966740664,\"cpu_utilization_is_error\":false,\"latency\":0.0,\"latency_is_error\":false,\"packet_loss\":3.1742385435,\"packet_loss_is_error\":false,\"throughput\":230.875976139,\"throughput_is_error\":false,\"timestamp\":1563795193534}\n" |
| 597 | + "{\"company\":\"Parker_and_Sons\",\"cpu_utilization\":77.0001379709,\"cpu_utilization_is_error\":false,\"latency\":8.9685908315,\"latency_is_error\":false,\"packet_loss\":0.1182060132,\"packet_loss_is_error\":false,\"throughput\":264.5567821475,\"throughput_is_error\":false,\"timestamp\":1565015264829}\n", |
| 598 | + "{\"company\":\"Barnes-Fletcher\",\"cpu_utilization\":82.3951249969,\"cpu_utilization_is_error\":false,\"latency\":2.7561547101,\"latency_is_error\":false,\"packet_loss\":0.9046704441,\"packet_loss_is_error\":false,\"throughput\":260.4376162919,\"throughput_is_error\":false,\"timestamp\":1565015264829}\n", |
| 599 | + "{\"company\":\"Johnson_Ltd\",\"cpu_utilization\":74.2230353639,\"cpu_utilization_is_error\":false,\"latency\":7.0199027791,\"latency_is_error\":false,\"packet_loss\":0.0,\"packet_loss_is_error\":false,\"throughput\":245.2035029337,\"throughput_is_error\":false,\"timestamp\":1565015264829}\n", |
| 600 | + "{\"company\":\"Cameron_Ltd\",\"cpu_utilization\":61.9061750617,\"cpu_utilization_is_error\":false,\"latency\":6.8589515103,\"latency_is_error\":false,\"packet_loss\":0.0,\"packet_loss_is_error\":false,\"throughput\":245.3090546657,\"throughput_is_error\":false,\"timestamp\":1565015264829}\n", |
| 601 | + "{\"company\":\"Sims-Mccoy\",\"cpu_utilization\":69.8156710076,\"cpu_utilization_is_error\":false,\"latency\":0.0,\"latency_is_error\":false,\"packet_loss\":4.1570694474,\"packet_loss_is_error\":false,\"throughput\":238.5772519428,\"throughput_is_error\":false,\"timestamp\":1565015264829}\n", |
| 602 | + "{\"company\":\"Bautista__Olson_and_Guzman\",\"cpu_utilization\":61.0139995818,\"cpu_utilization_is_error\":false,\"latency\":0.0,\"latency_is_error\":false,\"packet_loss\":0.0,\"packet_loss_is_error\":false,\"throughput\":253.2949507053,\"throughput_is_error\":false,\"timestamp\":1565015264829}\n", |
| 603 | + "{\"company\":\"Anderson_Inc\",\"cpu_utilization\":72.6603863726,\"cpu_utilization_is_error\":false,\"latency\":3.6437115053,\"latency_is_error\":false,\"packet_loss\":0.0,\"packet_loss_is_error\":false,\"throughput\":267.6726148695,\"throughput_is_error\":false,\"timestamp\":1565015264829}\n", |
| 604 | + "{\"company\":\"Nguyen-Silva\",\"cpu_utilization\":59.5127477315,\"cpu_utilization_is_error\":false,\"latency\":0.0,\"latency_is_error\":false,\"packet_loss\":0.0,\"packet_loss_is_error\":false,\"throughput\":255.2915162076,\"throughput_is_error\":false,\"timestamp\":1565015264829}\n", |
| 605 | + "{\"company\":\"Patrick_Group\",\"cpu_utilization\":68.3079877253,\"cpu_utilization_is_error\":false,\"latency\":0.0,\"latency_is_error\":false,\"packet_loss\":2.6670360416,\"packet_loss_is_error\":false,\"throughput\":243.9449272531,\"throughput_is_error\":false,\"timestamp\":1565015264829}\n", |
| 606 | + "{\"company\":\"Gutierrez_Ltd\",\"cpu_utilization\":70.1385482657,\"cpu_utilization_is_error\":false,\"latency\":0.0,\"latency_is_error\":false,\"packet_loss\":0.8048798451,\"packet_loss_is_error\":false,\"throughput\":252.1408356,\"throughput_is_error\":false,\"timestamp\":1565015264829}\n" |
595 | 607 | ] |
596 | 608 | } |
597 | 609 | ], |
598 | 610 | "source": [ |
599 | | - "!head data/ops.logs" |
| 611 | + "!head ${SOURCE_PATH}" |
600 | 612 | ] |
601 | 613 | }, |
602 | 614 | { |
|
613 | 625 | }, |
614 | 626 | { |
615 | 627 | "cell_type": "code", |
616 | | - "execution_count": 3, |
| 628 | + "execution_count": 12, |
617 | 629 | "metadata": {}, |
618 | 630 | "outputs": [], |
619 | 631 | "source": [ |
|
629 | 641 | }, |
630 | 642 | { |
631 | 643 | "cell_type": "code", |
632 | | - "execution_count": 7, |
| 644 | + "execution_count": 13, |
633 | 645 | "metadata": {}, |
634 | 646 | "outputs": [ |
635 | 647 | { |
636 | 648 | "name": "stdout", |
637 | 649 | "output_type": "stream", |
638 | 650 | "text": [ |
639 | | - "1.44 s ± 23.1 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)\n" |
| 651 | + "6.24 s ± 62.3 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)\n" |
640 | 652 | ] |
641 | 653 | } |
642 | 654 | ], |
|
663 | 675 | }, |
664 | 676 | { |
665 | 677 | "cell_type": "code", |
666 | | - "execution_count": 8, |
| 678 | + "execution_count": 14, |
667 | 679 | "metadata": {}, |
668 | 680 | "outputs": [ |
669 | 681 | { |
670 | 682 | "name": "stdout", |
671 | 683 | "output_type": "stream", |
672 | 684 | "text": [ |
673 | | - "43.4 s ± 627 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)\n" |
| 685 | + "47.6 s ± 228 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)\n" |
674 | 686 | ] |
675 | 687 | } |
676 | 688 | ], |
|
704 | 716 | }, |
705 | 717 | { |
706 | 718 | "cell_type": "code", |
707 | | - "execution_count": 35, |
| 719 | + "execution_count": 15, |
708 | 720 | "metadata": {}, |
709 | 721 | "outputs": [ |
710 | 722 | { |
711 | 723 | "name": "stdout", |
712 | 724 | "output_type": "stream", |
713 | 725 | "text": [ |
714 | | - "1.2 s ± 120 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)\n" |
| 726 | + "5.95 s ± 77.3 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)\n" |
715 | 727 | ] |
716 | 728 | } |
717 | 729 | ], |
|
729 | 741 | }, |
730 | 742 | { |
731 | 743 | "cell_type": "code", |
732 | | - "execution_count": 36, |
| 744 | + "execution_count": 16, |
733 | 745 | "metadata": {}, |
734 | 746 | "outputs": [ |
735 | 747 | { |
|
755 | 767 | }, |
756 | 768 | { |
757 | 769 | "cell_type": "code", |
758 | | - "execution_count": 4, |
| 770 | + "execution_count": 17, |
759 | 771 | "metadata": {}, |
760 | 772 | "outputs": [], |
761 | 773 | "source": [ |
|
772 | 784 | }, |
773 | 785 | { |
774 | 786 | "cell_type": "code", |
775 | | - "execution_count": 5, |
| 787 | + "execution_count": 18, |
776 | 788 | "metadata": {}, |
777 | 789 | "outputs": [ |
778 | 790 | { |
|
800 | 812 | }, |
801 | 813 | { |
802 | 814 | "cell_type": "code", |
803 | | - "execution_count": 6, |
| 815 | + "execution_count": 19, |
804 | 816 | "metadata": {}, |
805 | 817 | "outputs": [ |
806 | 818 | { |
|
818 | 830 | " agg({k: ['min', 'max', 'mean'] for k in metric_names})\n", |
819 | 831 | "raw_nlargest = pdf.nlargest(nlargest, 'cpu_utilization')" |
820 | 832 | ] |
821 | | - }, |
822 | | - { |
823 | | - "cell_type": "code", |
824 | | - "execution_count": null, |
825 | | - "metadata": {}, |
826 | | - "outputs": [], |
827 | | - "source": [] |
828 | 833 | } |
829 | 834 | ], |
830 | 835 | "metadata": { |
|
847 | 852 | } |
848 | 853 | }, |
849 | 854 | "nbformat": 4, |
850 | | - "nbformat_minor": 2 |
| 855 | + "nbformat_minor": 4 |
851 | 856 | } |
0 commit comments