diff --git a/.github/workflows/build-and-test-bindings.yml b/.github/workflows/build-and-test-bindings.yml new file mode 100644 index 0000000000..e2d396945f --- /dev/null +++ b/.github/workflows/build-and-test-bindings.yml @@ -0,0 +1,47 @@ +name: Build and Test Bindings Ubuntu 22.04 gcc 11 x64 + +# Trigger the workflow on push or pull request +on: +# push: +# branches: +# - master +# pull_request: +# types: [opened, reopened, synchronize, converted_to_draft, ready_for_review] + +jobs: + build: + runs-on: ubuntu-latest + strategy: + fail-fast: false + env: + OUTPUT_DIR: '/tmp/out' + name: vt-tv bindings build and test + steps: + - uses: actions/checkout@v3 + + - name: CI Variables + id: vars + run: echo "DOCKER_TAG=$(echo ${{ github.ref }} | cut -d'/' -f3- | sed 's/[^a-z0-9_-]/__/gi')" >> $GITHUB_ENV + + - name: Set up Docker Buildx + id: buildx + uses: docker/setup-buildx-action@v2 + + - name: Inspect Builder + run: | + echo "Name: ${{ steps.buildx.outputs.name }}" + echo "Endpoint: ${{ steps.buildx.outputs.endpoint }}" + echo "Status: ${{ steps.buildx.outputs.status }}" + echo "Flags: ${{ steps.buildx.outputs.flags }}" + echo "Platforms: ${{ steps.buildx.outputs.platforms }}" + echo "DOCKER_TAG: ${{ env.DOCKER_TAG }}" + + - name: Build the Docker Image; build and test vt-tv bindings + id: docker_build + uses: docker/build-push-action@v3 + with: + push: false + tags: ${{ env.DOCKER_TAG }} + context: . + file: ./ci/build-and-test-bindings.dockerfile + outputs: type=local,dest=${{ env.OUTPUT_DIR }} diff --git a/CMakeLists.txt b/CMakeLists.txt index 4aa5da7252..355d132182 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -19,13 +19,17 @@ set(VT_TV_LIBRARY_NS vt::lib::vt-tv) set(CMAKE_CXX_EXTENSIONS OFF) set(CMAKE_CXX_STANDARD_REQUIRED ON) +# add -fPIC to all targets +set(CMAKE_POSITION_INDEPENDENT_CODE ON) + if(NOT CMAKE_CXX_STANDARD) set(CMAKE_CXX_STANDARD 17 CACHE STRING "The C++ standard to use") endif() message(STATUS "CMAKE_CXX_STANDARD: ${CMAKE_CXX_STANDARD}") -option(vt_tv_python_bindings_enabled "Build vt-tv with Python bindings" ON) -option(vt_tv_openmp_enabled "Build vt-tv with openMP support" ON) +option(VT_TV_PYTHON_BINDINGS_ENABLED "Build vt-tv with Python bindings" ON) +option(VT_TV_OPENMP_ENABLED "Build vt-tv with openMP support" ON) +set(VT_TV_N_THREADS "2" CACHE STRING "Number of OpenMP threads to use") include(cmake/load_packages.cmake) @@ -33,20 +37,19 @@ if(APPLE) add_compile_options(-ffat-lto-objects) endif() -if(openmp_enabled) - set(VT_TV_NUM_THREADS "2" CACHE STRING "Number of threads to use") - add_definitions(-DVT_TV_NUM_THREADS=${VT_TV_NUM_THREADS}) -endif() +add_definitions(-DVT_TV_N_THREADS=${VT_TV_N_THREADS}) +add_definitions(-DVT_TV_OPENMP_ENABLED=${VT_TV_OPENMP_ENABLED}) add_custom_target(vt_tv_examples) add_custom_target(vt_tv_tests) add_custom_target(vt_tv_apps) -set(PROJECT_BIN_DIR ${CMAKE_CURRENT_BINARY_DIR}) -set(PROJECT_BASE_DIR ${CMAKE_CURRENT_SOURCE_DIR}) -set(PROJECT_LIB_DIR ${CMAKE_CURRENT_SOURCE_DIR}/lib) -set(PROJECT_EXAMPLE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/examples) -set(PROJECT_APP_DIR ${CMAKE_CURRENT_SOURCE_DIR}/apps) +set(PROJECT_BIN_DIR ${CMAKE_CURRENT_BINARY_DIR}) +set(PROJECT_BASE_DIR ${CMAKE_CURRENT_SOURCE_DIR}) +set(PROJECT_LIB_DIR ${CMAKE_CURRENT_SOURCE_DIR}/lib) +set(PROJECT_EXAMPLE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/examples) +set(PROJECT_APP_DIR ${CMAKE_CURRENT_SOURCE_DIR}/apps) +set(PROJECT_BINDINGS_DIR ${CMAKE_CURRENT_SOURCE_DIR}/bindings) include(CTest) @@ -54,6 +57,7 @@ add_subdirectory(src) add_subdirectory(examples) add_subdirectory(tests) add_subdirectory(apps) +add_subdirectory(bindings) configure_file( cmake/vtTVConfig.cmake.in @@ -70,34 +74,3 @@ install( DESTINATION cmake COMPONENT lib ) - -if (vt_tv_python_bindings_enabled) - # Build the core parts of nanobind once - nanobind_build_library(nanobind SHARED) - - # Compile an extension library - add_library(my_ext MODULE ${CMAKE_CURRENT_SOURCE_DIR}/circle.cc) - - # .. and link it against the nanobind parts - message(STATUS "vtk libraries: ${VTK_LIBRARIES}") - target_link_libraries(my_ext PUBLIC ${VTK_LIBRARIES}) - target_link_libraries(my_ext PRIVATE nanobind) - - # .. enable size optimizations - nanobind_opt_size(my_ext) - - # .. enable link time optimization - nanobind_lto(my_ext) - - # .. disable the stack protector - nanobind_disable_stack_protector(my_ext) - - # .. set the Python extension suffix - nanobind_extension(my_ext) - - # .. set important compilation flags - nanobind_compile_options(my_ext) - - # .. set important linker flags - nanobind_link_options(my_ext) -endif() diff --git a/README.md b/README.md index f4efbad5ca..cd8578daf2 100644 --- a/README.md +++ b/README.md @@ -16,4 +16,43 @@ using Paraview. Additionally, the task visualizer can produce PNGs directly using a VTK workflow to render a visualization of ranks and tasks over phases. -![Example Output PNG](./docs/example-output-image.png) \ No newline at end of file +![Example Output PNG](./docs/example-output-image.png) + +## Building the Python bindings + +### Requirements + +In order to build the python bindings, make sure you have a Python `3.8` or `3.9` environment, with the `nanobind` package installed. You can install `nanobind` with `pip`: + +```bash +pip install nanobind +``` + +You must have a C++ compiler that supports C++17, and `cmake` >= 3.17. + +Finally, you must have a (C++) [VTK](https://vtk.org/) build available on your system. We recommend building from source, and the currently tested version is `9.3.0`. You can find instructions for building VTK [here](https://gitlab.kitware.com/vtk/vtk/-/blob/master/Documentation/docs/build_instructions/build.md). + +### Building + +To build the python bindings, you must specify in the `VTTV_VTK_DIR` environment variable the path to the VTK build directory: + +```bash +export VTTV_VTK_DIR=/path/to/vtk/build +``` + + +Then, to install python-environment-wide the binded `vt-tv` python module, run: + +```bash +pip install +``` +**Optional** + +To specify the number of parallel jobs to use during the build, you can set the `VTTV_J` environment variable: + +```bash +export VTTV_J=8 +``` + +> [!NOTE] +> Behind the scenes, the usual `cmake` and `make` commands are run. Depending on your system, this can cause the install process to be lengthy as it will be compiling the entire `vt-tv` library. diff --git a/apps/CMakeLists.txt b/apps/CMakeLists.txt index 1c76334fa7..8d7001a55c 100644 --- a/apps/CMakeLists.txt +++ b/apps/CMakeLists.txt @@ -51,4 +51,10 @@ foreach(APP_FULL ${PROJECT_APPS}) PUBLIC ${VT_TV_LIBRARY_NS} ) + + vtk_module_autoinit( + TARGETS ${APP} + MODULES ${VTK_LIBRARIES} + ) + endforeach() diff --git a/bindings/CMakeLists.txt b/bindings/CMakeLists.txt new file mode 100644 index 0000000000..ec615a4126 --- /dev/null +++ b/bindings/CMakeLists.txt @@ -0,0 +1,3 @@ +if(VT_TV_PYTHON_BINDINGS_ENABLED) + add_subdirectory(python) +endif() diff --git a/bindings/python/CMakeLists.txt b/bindings/python/CMakeLists.txt new file mode 100644 index 0000000000..13291f9023 --- /dev/null +++ b/bindings/python/CMakeLists.txt @@ -0,0 +1,21 @@ + +# Source files for the Python bindings +file( + GLOB + PYTHON_BINDING_SRCS + "${CMAKE_CURRENT_SOURCE_DIR}/*.cc" +) + +# Build the core parts of nanobind once +nanobind_build_library(nanobind SHARED) + +# Create the Python bindings for the module +nanobind_add_module(vttv ${PYTHON_BINDING_SRCS} tv.cc) + +# .. Link it to necessary libraries +target_link_libraries(vttv PUBLIC ${VT_TV_LIBRARY_NS} ${JSON_LIBRARY} ${FMT_LIBRARY}) + +vtk_module_autoinit( + TARGETS vttv + MODULES ${VTK_LIBRARIES} +) diff --git a/bindings/python/tv.cc b/bindings/python/tv.cc new file mode 100644 index 0000000000..3558fa631c --- /dev/null +++ b/bindings/python/tv.cc @@ -0,0 +1,140 @@ +#include "tv.h" + +namespace vt::tv::bindings::python { + +void tvFromJson(const std::vector& input_json_per_rank_list, const std::string& input_yaml_params_str, uint64_t num_ranks) { + std::string startup_logo = std::string(" __ __\n") + + std::string(" _ __/ /_ / /__ __\n") + + std::string("| | / / __/ _____ / __/ | / /\n") + + std::string("| |/ / / /____/ / /_ | |/ /\n") + + std::string("|___/\\__/ \\__/ |___/\n"); + fmt::print("==============================\n"); + fmt::print(startup_logo); + fmt::print("==============================\n"); + + // parse the input yaml parameters + try { + // Load the configuration from serialized YAML + YAML::Node viz_config = YAML::Load(input_yaml_params_str); + + + std::array qoi_request = { + viz_config["rank_qoi"].as(), + "", + viz_config["object_qoi"].as() + }; + + bool save_meshes = viz_config["save_meshes"].as(); + bool save_pngs = true; // lbaf always saves pngs + bool continuous_object_qoi = viz_config["force_continuous_object_qoi"].as(); + + std::array grid_size = { + viz_config["x_ranks"].as(), + viz_config["y_ranks"].as(), + viz_config["z_ranks"].as() + }; + + double object_jitter = viz_config["object_jitter"].as(); + + std::string output_dir = viz_config["output_visualization_dir"].as(); + std::filesystem::path output_path(output_dir); + + // Throw an error if the output directory does not exist or is not absolute + if (!std::filesystem::exists(output_path)) { + throw std::runtime_error("Visualization output directory does not exist."); + } + if (!output_path.is_absolute()) { + throw std::runtime_error("Visualization output directory must be absolute."); + } + + // append / to avoid problems with file stems + if (!output_dir.empty() && output_dir.back() != '/') { + output_dir += '/'; + } + + std::string output_file_stem = viz_config["output_visualization_file_stem"].as(); + + uint64_t win_size = 2000; + if (viz_config["window_size"]) { + win_size = viz_config["window_size"].as(); + } + + // Use automatic font size if not defined by user + // 0.025 is the factor of the window size determined to be ideal for the font size + uint64_t font_size = 0.025 * win_size; + if (viz_config["font_size"]) { + font_size = viz_config["font_size"].as(); + } + + // print all saved configuration parameters + fmt::print("Input Configuration Parameters:\n"); + fmt::print(" x_ranks: {}\n", grid_size[0]); + fmt::print(" y_ranks: {}\n", grid_size[1]); + fmt::print(" z_ranks: {}\n", grid_size[2]); + fmt::print(" object_jitter: {}\n", object_jitter); + fmt::print(" rank_qoi: {}\n", qoi_request[0]); + fmt::print(" object_qoi: {}\n", qoi_request[2]); + fmt::print(" save_meshes: {}\n", save_meshes); + fmt::print(" save_pngs: {}\n", save_pngs); + fmt::print(" force_continuous_object_qoi: {}\n", continuous_object_qoi); + fmt::print(" output_visualization_dir: {}\n", output_dir); + fmt::print(" output_visualization_file_stem: {}\n", output_file_stem); + fmt::print(" window_size: {}\n", win_size); + fmt::print(" font_size: {}\n", font_size); + + using json = nlohmann::json; + + assert(input_json_per_rank_list.size() == num_ranks && "Must have the same number of json files as ranks"); + + // Initialize the info object, that will hold data for all ranks for all phases + std::unique_ptr info = std::make_unique(); + + #ifdef VT_TV_N_THREADS + const int threads = VT_TV_N_THREADS; + #else + const int threads = 2; + #endif + #ifdef VT_TV_OPENMP_ENABLED + #if VT_TV_OPENMP_ENABLED + omp_set_num_threads(threads); + // print number of threads + fmt::print("vt-tv: Using {} threads\n", threads); + # pragma omp parallel for + #endif + #endif + for (int64_t rank_id = 0; rank_id < num_ranks; rank_id++) { + fmt::print("Reading file for rank {}\n", rank_id); + std::string rank_json_str = input_json_per_rank_list[rank_id]; + utility::JSONReader reader{static_cast(rank_id)}; + reader.readString(rank_json_str); + auto tmpInfo = reader.parse(); + #ifdef VT_TV_OPENMP_ENABLED + #if VT_TV_OPENMP_ENABLED + #pragma omp critical + #endif + #endif + { + info->addInfo(tmpInfo->getObjectInfo(), tmpInfo->getRank(rank_id)); + } + } + // Instantiate render + Render render( + qoi_request, continuous_object_qoi, *info, grid_size, object_jitter, + output_dir, output_file_stem, 1.0, save_meshes, save_pngs, std::numeric_limits::max() + ); + render.generate(font_size, win_size); + } catch (std::exception const& e) { + std::cout << "vt-tv: Error reading the configuration file: " << e.what() << std::endl; + } + + fmt::print("vt-tv: Done.\n"); +} + +namespace nb = nanobind; +using namespace nb::literals; + +NB_MODULE(vttv, m) { + m.def("tvFromJson", &tvFromJson); +} + +} /* end namespace vt::tv::bindings::python */ diff --git a/bindings/python/tv.h b/bindings/python/tv.h new file mode 100644 index 0000000000..65c3a31312 --- /dev/null +++ b/bindings/python/tv.h @@ -0,0 +1,80 @@ +/* +//@HEADER +// ***************************************************************************** +// +// tv.h +// DARMA/vt-tv => Virtual Transport -- Task Visualizer +// +// Copyright 2019 National Technology & Engineering Solutions of Sandia, LLC +// (NTESS). Under the terms of Contract DE-NA0003525 with NTESS, the U.S. +// Government retains certain rights in this software. +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are met: +// +// * Redistributions of source code must retain the above copyright notice, +// this list of conditions and the following disclaimer. +// +// * Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// * Neither the name of the copyright holder nor the names of its +// contributors may be used to endorse or promote products derived from this +// software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE +// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +// POSSIBILITY OF SUCH DAMAGE. +// +// Questions? Contact darma@sandia.gov +// +// ***************************************************************************** +//@HEADER +*/ + +#if !defined INCLUDED_VT_TV_BINDINGS_PYTHON_JSON_INTERFACE_H +#define INCLUDED_VT_TV_BINDINGS_PYTHON_JSON_INTERFACE_H + +#include + +#include +#include "vt-tv/render/render.h" +#include "vt-tv/api/types.h" +#include "vt-tv/api/info.h" +#include "vt-tv/utility/decompression_input_container.h" +#include "vt-tv/utility/input_iterator.h" +#include "vt-tv/utility/qoi_serializer.h" +#include "vt-tv/utility/json_reader.h" + +#include +#include + +#include +#include +#include + +#include +#include + +#ifdef VT_TV_OPENMP_ENABLED +#if VT_TV_OPENMP_ENABLED + #include +#endif +#endif + +namespace vt::tv::bindings::python { + +void tvFromJson(const std::vector&, const std::string&, uint64_t); + +} /* end namespace vt::tv::bindings::python */ + +#endif /*INCLUDED_VT_TV_BINDINGS_PYTHON_JSON_INTERFACE_H*/ diff --git a/bindings/python/vttv/__init__.py b/bindings/python/vttv/__init__.py new file mode 100644 index 0000000000..e05d66ec2e --- /dev/null +++ b/bindings/python/vttv/__init__.py @@ -0,0 +1 @@ +from .vttv import tvFromJson diff --git a/ci/build-and-test-bindings.dockerfile b/ci/build-and-test-bindings.dockerfile new file mode 100644 index 0000000000..f74600fe50 --- /dev/null +++ b/ci/build-and-test-bindings.dockerfile @@ -0,0 +1,19 @@ +FROM pierrpebay/vt-tv:master AS build + +COPY . /opt/src/vt-tv +RUN mkdir -p /opt/build/vt-tv/test_output + +# setup environment +ENV VTTV_VTK_DIR=/opt/build/vtk-build +ENV CC=gcc-11 +ENV CXX=g++-11 + +# build bindings +RUN /bin/bash -c ". /opt/conda/etc/profile.d/conda.sh && conda activate deves && pip install /opt/src/vt-tv" + +# test bindings + +# create output directory +RUN mkdir -p /opt/build/vt-tv/test_output + +RUN /bin/bash -c ". /opt/conda/etc/profile.d/conda.sh && conda activate deves && pip install PyYAML && python /opt/src/vt-tv/tests/test_bindings.py" diff --git a/ci/make-base-ubuntu22.04-gcc11-x64.dockerfile b/ci/make-base-ubuntu22.04-gcc11-x64.dockerfile index 50ddd13908..77f14cb6c8 100644 --- a/ci/make-base-ubuntu22.04-gcc11-x64.dockerfile +++ b/ci/make-base-ubuntu22.04-gcc11-x64.dockerfile @@ -31,6 +31,7 @@ RUN apt-get update \ libgl1-mesa-dev \ libglu1-mesa-dev \ mesa-common-dev \ + libosmesa6-dev \ perl \ curl \ && rm -rf /var/lib/apt/lists/* @@ -68,6 +69,12 @@ RUN cmake \ -DCMAKE_CXX_COMPILER=g++-11 \ -DCMAKE_BUILD_TYPE:STRING=Release \ -DBUILD_TESTING:BOOL=OFF \ + -DVTK_OPENGL_HAS_OSMESA:BOOL=ON \ + -DVTK_DEFAULT_RENDER_WINDOW_OFFSCREEN:BOOL=ON \ + -DVTK_USE_X:BOOL=OFF \ + -DVTK_USE_WIN32_OPENGL:BOOL=OFF \ + -DVTK_USE_COCOA:BOOL=OFF \ + -DVTK_USE_SDL2:BOOL=OFF \ -DVTK_Group_Rendering:BOOL=OFF \ -DBUILD_TESTING:BOOL=OFF \ -DBUILD_SHARED_LIBS:BOOL=ON \ diff --git a/circle.cc b/circle.cc deleted file mode 100644 index abbc94061d..0000000000 --- a/circle.cc +++ /dev/null @@ -1,54 +0,0 @@ -#include "circle.h" - - - -int add(int a, int b) { return a + b; } - -void Circle::render() { - vtkNew colors; - - // Create a circle - vtkNew polygonSource; - // Comment this line to generate a disk instead of a circle. - //polygonSource->GeneratePolygonOff(); - polygonSource->SetNumberOfSides(50); - polygonSource->SetRadius(5); - polygonSource->SetCenter(0, 0, 0); - - // Visualize - vtkNew mapper; - mapper->SetInputConnection(polygonSource->GetOutputPort()); - - vtkNew actor; - actor->SetMapper(mapper); - actor->GetProperty()->SetColor(colors->GetColor3d(this->color).GetData()); - - vtkNew renderer; - renderer->AddActor(actor); - renderer->SetBackground(colors->GetColor3d("Blue").GetData()); - - vtkNew renderWindow; - renderWindow->AddRenderer(renderer); - - renderWindow->SetWindowName("Circle"); - renderWindow->Render(); - - vtkNew w2i; - w2i->SetInput(renderWindow.Get()); - w2i->SetScale(3); - - vtkNew writer; - writer->SetFileName("test.png"); - writer->SetInputConnection(w2i->GetOutputPort()); - writer->Write(); -} - -NB_MODULE(my_ext, m) { - nb::class_(m, "Circle") - .def(nb::init()) - .def("what_color", &Circle::what_color) - .def_rw("color", &Circle::color) - .def("render", &Circle::render); - m.def("add", &add); - m.attr("the_answer") = 42; -} diff --git a/circle.h b/circle.h deleted file mode 100644 index f1c9fe6db7..0000000000 --- a/circle.h +++ /dev/null @@ -1,45 +0,0 @@ -#if !defined INCLUDED_VT_TV_RENDER_CIRCLE_H -#define INCLUDED_VT_TV_RENDER_CIRCLE_H - -// #include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -// #include -#include -#include -#include -#include -#include -#include - -#include -#include - -#include -#include - -namespace nb = nanobind; - -struct Circle { - std::string color; - - std::string what_color() const { return "Circle color: " + color; } - - void render(); -}; - -#endif /*INCLUDED_VT_TV_RENDER_CIRCLE_H*/ diff --git a/cmake/load_nanobind_package.cmake b/cmake/load_nanobind_package.cmake index f535387ef6..539ada0af9 100644 --- a/cmake/load_nanobind_package.cmake +++ b/cmake/load_nanobind_package.cmake @@ -2,7 +2,7 @@ find_package(Python COMPONENTS Interpreter Development.Module REQUIRED) if(NOT (${Python_VERSION_MAJOR} EQUAL 3 AND (${Python_VERSION_MINOR} EQUAL 8 OR ${Python_VERSION_MINOR} EQUAL 9))) - message(FATAL_ERROR "Python version must be 3.8 or 3.9") + message(FATAL_ERROR "With Python bindings enabled, vt-tv requires Python version 3.8 or 3.9.") endif() diff --git a/cmake/load_openmp.cmake b/cmake/load_openmp.cmake index 3247c615ad..186bc077c5 100644 --- a/cmake/load_openmp.cmake +++ b/cmake/load_openmp.cmake @@ -1,10 +1,10 @@ -if(NOT APPLE) - find_package(OpenMP) - if (OPENMP_FOUND) - message(STATUS "Found OpenMP") - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}") - set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${OpenMP_EXE_LINKER_FLAGS}") - set(openmp_enabled ON) - endif() +find_package(OpenMP) +if (OPENMP_FOUND) + message(STATUS "Found OpenMP") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}") + set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${OpenMP_EXE_LINKER_FLAGS}") +else () + message(STATUS "Did not find OpenMP") + set(VT_TV_OPENMP_ENABLED OFF) endif() diff --git a/cmake/load_packages.cmake b/cmake/load_packages.cmake index e6418ace79..85a3b8d7ac 100644 --- a/cmake/load_packages.cmake +++ b/cmake/load_packages.cmake @@ -28,10 +28,10 @@ add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/lib/yaml-cpp) include(cmake/load_vtk_package.cmake) -if (vt_tv_python_bindings_enabled) +if (VT_TV_PYTHON_BINDINGS_ENABLED) include(cmake/load_nanobind_package.cmake) endif() -if (vt_tv_openmp_enabled) +if (VT_TV_OPENMP_ENABLED) include(cmake/load_openmp.cmake) endif() diff --git a/cmake/load_vtk_package.cmake b/cmake/load_vtk_package.cmake index f3d9617f00..6d0c04dad8 100644 --- a/cmake/load_vtk_package.cmake +++ b/cmake/load_vtk_package.cmake @@ -17,4 +17,6 @@ find_package( RenderingAnnotation ) +message(STATUS "VTK version: ${VTK_VERSION}") + message(STATUS "VTK libraries: ${VTK_LIBRARIES}") diff --git a/docs/example-output-image.png b/docs/example-output-image.png index 26bd191698..9edfd2b7b4 100644 Binary files a/docs/example-output-image.png and b/docs/example-output-image.png differ diff --git a/examples/example2.cc b/examples/example2.cc index f5a31d0ac8..b25db24245 100644 --- a/examples/example2.cc +++ b/examples/example2.cc @@ -65,9 +65,9 @@ int main() { std::unique_ptr info = std::make_unique(); for (NodeType rank = 0; rank < n_ranks; rank++) { - utility::JSONReader reader{rank, path + "/data." + std::to_string(rank) + ".json"}; - reader.readFile(); - auto tmpInfo = reader.parseFile(); + utility::JSONReader reader{rank}; + reader.readFile(path + "/data." + std::to_string(rank) + ".json"); + auto tmpInfo = reader.parse(); info->addInfo(tmpInfo->getObjectInfo(), tmpInfo->getRank(rank)); } diff --git a/scripts/create_synthetic_attributes_data.py b/scripts/create_synthetic_attributes_data.py new file mode 100644 index 0000000000..19daa15627 --- /dev/null +++ b/scripts/create_synthetic_attributes_data.py @@ -0,0 +1,47 @@ +import json +import brotli +import os + +def get_attributes_dict(id): + attributes = { + "intAttribute": id, + "doubleAttribute": float(id) * 3.14, + "elementIDAttribute": id + 30000000000, + "stringAttribute": f"id is {id}" + } + return attributes + +project_dir = os.path.dirname(os.path.dirname(__file__)) +test_data_dir = os.path.join(project_dir, "tests", "unit", "lb_test_data") + +output_dir = os.path.join(project_dir, "tests", "unit", "synthetic_attributes") +os.makedirs(output_dir, exist_ok=True) + +# Loop through all ranks +num_ranks = 4 +for rank_id in range(num_ranks): + json_file = os.path.join(test_data_dir, f"data.{rank_id}.json") + with open(json_file) as f: + json_data = json.load(f) + + # Add rank attributes + rank_attributes = get_attributes_dict(rank_id) + json_data["metadata"]["attributes"] = rank_attributes + + # Then object attributes + for phase in json_data["phases"]: + for task in phase["tasks"]: + task_id = task["entity"]["id"] + attributes = get_attributes_dict(task_id) + task["attributes"] = attributes + + # Write out json + output_file = os.path.join(output_dir, f"data.{rank_id}.json") + with open(output_file, "w") as out_json: + json.dump(json_data, out_json) + + # Write out the compressed json + compressed_output_file = os.path.join(output_dir, f"data.{rank_id}.json.br") + with open(compressed_output_file, "wb") as out_br: + compressed_data = brotli.compress(json.dumps(json_data).encode('utf-8')) + out_br.write(compressed_data) diff --git a/setup.py b/setup.py new file mode 100644 index 0000000000..90ad2fc295 --- /dev/null +++ b/setup.py @@ -0,0 +1,77 @@ +from setuptools import setup, Extension, find_packages +from setuptools.command.build_ext import build_ext +import subprocess +import os +import sys + +# Ensure python-build directory exists +build_dir = 'python-build' +os.makedirs(build_dir, exist_ok=True) + +class CMakeExtension(Extension): + def __init__(self, name, sourcedir=''): + Extension.__init__(self, name, sources=[]) + self.sourcedir = os.path.abspath(sourcedir) + +class CMakeBuild(build_ext): + def run(self): + try: + out = subprocess.check_output(['cmake', '--version']) + except OSError: + raise RuntimeError("CMake must be installed to build the following extensions: " + + ", ".join(e.name for e in self.extensions)) + + for ext in self.extensions: + self.build_extension(ext) + + def build_extension(self, ext): + extdir = os.path.abspath(os.path.dirname(self.get_ext_fullpath(ext.name))) + build_temp = os.path.join('python-build', 'build', 'temp') + os.makedirs(build_temp, exist_ok=True) + + vtk_dir = os.environ.get('VTTV_VTK_DIR') + if not vtk_dir: + raise RuntimeError("Environment variable VTTV_VTK_DIR is required") + + jobs = os.environ.get('VTTV_CMAKE_JOBS', os.cpu_count()) + + n_threads = os.environ.get('VTTV_N_THREADS', 1) + # check if n_threads is a valid integer + try: + n_threads = int(n_threads) + except ValueError: + raise RuntimeError("Environment variable VTTV_N_THREADS must be an integer") + + cmake_args = ['-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=' + extdir, + '-DPYTHON_EXECUTABLE=' + sys.executable, + '-DVTK_DIR=' + vtk_dir, + '-DVT_TV_N_THREADS=' + str(n_threads)] + + if sys.platform == "darwin": + import platform + macos_version = platform.mac_ver()[0] + cmake_args.append('-DCMAKE_OSX_DEPLOYMENT_TARGET:STRING=' + macos_version) + + cfg = 'Debug' if self.debug else 'Release' + build_args = ['--config', cfg] + + os.chdir(build_temp) + self.spawn(['cmake', ext.sourcedir] + cmake_args) + if not self.dry_run: + self.spawn(['cmake', '--build', '.', '--parallel', '-j' + str(jobs)] + build_args) + os.chdir(ext.sourcedir) + +setup( + name='vttv', + version='0.0.1', + author='Pierre Pebay', + author_email='pierre.pebay@ng-analytics.com', + url='https://github.com/DARMA-tasking/vt-tv', + description='Virtual Transport Task Visualizer', + long_description='', + ext_modules=[CMakeExtension('vttv', sourcedir='.')], + cmdclass=dict(build_ext=CMakeBuild), + package_dir={'': build_dir}, + packages=find_packages(build_dir), + zip_safe=False, +) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 86690307f7..5f54faa705 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -52,9 +52,6 @@ foreach(SUB_DIR ${TOP_LEVEL_SUBDIRS}) "${CMAKE_CURRENT_SOURCE_DIR}/vt-tv/${SUB_DIR}/*.cc" ) - #message("headers=${${SUB_DIR}_HEADER_FILES}") - #message("source=${${SUB_DIR}_SOURCE_FILES}") - list( APPEND HEADER_FILES diff --git a/src/vt-tv/api/info.h b/src/vt-tv/api/info.h index b940ed7782..9a4f8f2313 100644 --- a/src/vt-tv/api/info.h +++ b/src/vt-tv/api/info.h @@ -141,45 +141,173 @@ struct Info { return n_phases; } - /** - * \brief Get load of a given rank - * - * \param[in] rank the rank - * - * \return the rank load - */ - double getRankLoad(NodeType rank, PhaseType phase) const { return ranks_.at(rank).getLoad(phase); } + ///////////////////////////////////////////////////////////////////////////////////////// + //////////// //////////// + //////////// GENERALIZED QOI GETTERS //////////// + //////////// //////////// + ///////////////////////////////////////////////////////////////////////////////////////// - /** - * \brief Get loads of all ranks at given phase - * - * \return a map of loads per rank + /* ----------------------------------- Getters ----------------------------------- */ + + /** + * \brief Converts a QOI from QOIVariantTypes to double */ - std::unordered_map getAllRankLoadsAtPhase(PhaseType phase) const { - std::unordered_map rank_loads; + double convertQOIVariantTypeToDouble_(const QOIVariantTypes &variant) const { + if (std::holds_alternative(variant)) { + return static_cast(std::get(variant)); + } else if (std::holds_alternative(variant)) { + return static_cast(std::get(variant)); + } else if (std::holds_alternative(variant)) { + return std::get(variant); + } else if (std::holds_alternative(variant)) { + throw std::runtime_error("QOI type must be numerical (received std::string)."); + } else { + throw std::runtime_error("Invalid QOI type received (must be numerical)."); + } + } - for (auto const& [rank_id, rank] : this->ranks_) { - rank_loads.insert(std::make_pair(rank_id, rank.getLoad(phase))); + + /** + * \brief Returns a getter to a specified rank QOI + */ + std::function getRankQOIGetter(const std::string &rank_qoi) const { + std::function qoi_getter; + if (rank_qoi == "load") { + qoi_getter = [&](Rank rank, PhaseType phase) { + return convertQOIVariantTypeToDouble_(getRankLoad(rank, phase)); + }; + } else if (rank_qoi == "received_volume") { + qoi_getter = [&](Rank rank, PhaseType phase) { + return convertQOIVariantTypeToDouble_(getRankReceivedVolume(rank, phase)); + }; + } else if (rank_qoi == "sent_volume") { + qoi_getter = [&](Rank rank, PhaseType phase) { + return convertQOIVariantTypeToDouble_(getRankSentVolume(rank, phase)); + }; + } else if (rank_qoi == "number_of_objects") { + qoi_getter = [&](Rank rank, PhaseType phase) { + return convertQOIVariantTypeToDouble_(getRankNumObjects(rank, phase)); + }; + } else if (rank_qoi == "number_of_migratable_objects") { + qoi_getter = [&](Rank rank, PhaseType phase) { + return convertQOIVariantTypeToDouble_(getRankNumMigratableObjects(rank, phase)); + }; + } else if (rank_qoi == "migratable_load") { + qoi_getter = [&](Rank rank, PhaseType phase) { + return convertQOIVariantTypeToDouble_(getRankMigratableLoad(rank, phase)); + }; + } else if (rank_qoi == "sentinel_load") { + qoi_getter = [&](Rank rank, PhaseType phase) { + return convertQOIVariantTypeToDouble_(getRankSentinelLoad(rank, phase)); + }; + } else if (rank_qoi == "id") { + qoi_getter = [&](Rank rank, PhaseType phase) { + return convertQOIVariantTypeToDouble_(getRankID(rank, phase)); + }; + } else { + // Look in attributes (will throw an error if QOI doesn't exist) + qoi_getter = [&](Rank rank, PhaseType phase) { + return convertQOIVariantTypeToDouble_(getRankAttribute(rank, rank_qoi, phase)); + }; } + return qoi_getter; + } - return rank_loads; + /** + * \brief Returns a getter to a specified object QOI + */ + std::function getObjectQoiGetter(const std::string &object_qoi) const { + std::function qoi_getter; + if (object_qoi == "load") { + qoi_getter = [&](ObjectWork obj) { + return convertQOIVariantTypeToDouble_(getObjectLoad(obj)); + }; + } else if (object_qoi == "received_volume") { + qoi_getter = [&](ObjectWork obj) { + return convertQOIVariantTypeToDouble_(getObjectReceivedVolume(obj)); + }; + } else if (object_qoi == "sent_volume") { + qoi_getter = [&](ObjectWork obj) { + return convertQOIVariantTypeToDouble_(getObjectSentVolume(obj)); + }; + } else if (object_qoi == "max_volume") { + qoi_getter = [&](ObjectWork obj) { + return convertQOIVariantTypeToDouble_(getObjectMaxVolume(obj)); + }; + } else if (object_qoi == "id") { + qoi_getter = [&](ObjectWork obj) { + return convertQOIVariantTypeToDouble_(getObjectID(obj)); + }; + } else if (object_qoi == "rank_id") { + qoi_getter = [&](ObjectWork obj) { + return convertQOIVariantTypeToDouble_(getObjectRankID(obj)); + }; + } else { + // Look in attributes (will throw an error if QOI doesn't exist) + qoi_getter = [&](ObjectWork obj) { + return convertQOIVariantTypeToDouble_(getObjectAttribute(obj, object_qoi)); + }; + } + return qoi_getter; } - /** - * \brief Get loads of a given rank across all phases + /* --------------------------------- Rank Getters --------------------------------- */ + + /** + * \brief Get QOI of a given rank at a given phase * - * \return a map of loads per rank + * \return a map of QOI per rank */ - std::unordered_map getAllLoadsAtRank(NodeType rank_id) const { - std::unordered_map rank_loads; + double getRankQOIAtPhase(ElementIDType rank_id, PhaseType phase, std::string rank_qoi) const { + auto qoi_getter = getRankQOIGetter(rank_qoi); + auto const& rank = this->ranks_.at(rank_id); + return qoi_getter(rank, phase); + } + /** + * \brief Get QOI of a given rank across all phases + * + * \return a map of QOI per rank + */ + std::unordered_map getAllQOIAtRank(ElementIDType rank_id, std::string rank_qoi) const { + std::unordered_map rank_qois; + auto qoi_getter = getRankQOIGetter(rank_qoi); auto const& rank = this->ranks_.at(rank_id); auto const& phase_work = rank.getPhaseWork(); for (auto const& [phase, _] : phase_work) { - rank_loads.insert(std::make_pair(phase, rank.getLoad(phase))); + rank_qois.insert(std::make_pair(phase, qoi_getter(rank, phase))); } - return rank_loads; + return rank_qois; + } + + /** + * \brief Get QOI of all ranks at given phase + * + * \return a map of QOI per rank + */ + std::unordered_map getAllRankQOIAtPhase(PhaseType phase, std::string rank_qoi) const { + std::unordered_map rank_qois; + auto qoi_getter = getRankQOIGetter(rank_qoi); + for (auto const& [rank_id, rank] : this->ranks_) { + rank_qois.insert(std::make_pair(rank_id, qoi_getter(rank, phase))); + } + + return rank_qois; + } + + /* -------------------------------- Object Getters -------------------------------- */ + + /** + * \brief Get a specified object's QOI at a given phase + * + * \return the object QOI + */ + double getObjectQoi(ElementIDType obj_id, PhaseType phase, std::string obj_qoi) const { + auto qoi_getter = getObjectQoiGetter(obj_qoi); + auto const& objects = this->getPhaseObjects(phase); + auto const& obj = objects.at(obj_id); + return qoi_getter(obj); } /** @@ -190,7 +318,7 @@ struct Info { * * \return the objects */ - std::unordered_map getRankObjects(NodeType rank_id, PhaseType phase) const { + std::unordered_map getRankObjects(ElementIDType rank_id, PhaseType phase) const { std::unordered_map objects; // Get Rank info for specified rank @@ -274,6 +402,26 @@ struct Info { return ov_max; } + /** + * \brief Get maximum load of objects across all ranks and phases + * + * \return the maximum load + */ + double getMaxLoad() const { + double ol_max = 0.; + + auto n_phases = this->getNumPhases(); + for (PhaseType phase = 0; phase < n_phases; phase++) { + auto const& objects = this->getPhaseObjects(phase); + for (auto const& [obj_id, obj_work] : objects) { + auto obj_load = obj_work.getLoad(); + if (obj_load > ol_max) ol_max = obj_load; + } + } + + return ol_max; + } + /** * \brief Create mapping of all objects in all ranks for a given phase (made for allowing changes to these objects) * @@ -358,40 +506,94 @@ struct Info { * \return void */ void normalizeEdges(PhaseType phase) { - fmt::print("\n---- Normalizing Edges for phase {} ----\n", phase); - auto phaseObjects = createPhaseObjectsMapping(phase); - for (auto& [id1, objectWork1] : phaseObjects) { - auto sent1 = objectWork1.getSent(); - auto received1 = objectWork1.getReceived(); - for (auto& [id2, objectWork2] : phaseObjects) { - if (id1 != id2) { - auto sent2 = objectWork2.getSent(); - auto received2 = objectWork2.getReceived(); - - // Handle communications from object 2 to object 1 - auto its2 = sent2.equal_range(id1); - for (auto it = its2.first; it != its2.second; ++it) { - objectWork1.addReceivedCommunications(id2, it->second); - } - - auto itr2 = received2.equal_range(id1); - for (auto it = itr2.first; it != itr2.second; ++it) { - objectWork1.addSentCommunications(id2, it->second); - } - - // Handle communications from object 1 to object 2 - auto its1 = sent1.equal_range(id2); - for (auto it = its1.first; it != its1.second; ++it) { - objectWork2.addReceivedCommunications(id1, it->second); - } - - auto itr1 = received1.equal_range(id2); - for (auto it = itr1.first; it != itr1.second; ++it) { - objectWork2.addSentCommunications(id1, it->second); - } + fmt::print("\n---- Normalizing Edges for phase {} ----\n", phase); + // Vector of tuples of communications to add: {side_to_be_modified, id1, id2, bytes} for an id1 -> id2 communication (1 sends to 2, 2 receives from 1) + // if type is "sender", communication has to be added to sent communications for object id1 + // if type is "recipient", communication has to be added to received communications for object id2 + std::vector> communications_to_add; + + auto phase_objects = createPhaseObjectsMapping(phase); + // Checking all communications for object A in all objects of all ranks at given phase: A <- ... and A -> ... + for (auto& [A_id, object_work] : phase_objects) { +// fmt::print("- Object ID: {}\n", A_id); + auto sent = object_work.getSent(); +// fmt::print(" Has {} sent communications", sent.size()); + auto received = object_work.getReceived(); +// fmt::print(" and {} received communications.\n", received.size()); + // Going through A -> ... communications +// fmt::print(" Checking sent communications:\n"); + for (auto& [B_id, bytes] : sent) { +// fmt::print(" Communication sent to object {} of {} bytes:\n", B_id, bytes); + // check if B exists for the A -> B communication + if (phase_objects.find(B_id) != phase_objects.end()) { +// fmt::print(" Found recipient object {} when searching for communication sent by object {} of {} bytes.\n", B_id, A_id, bytes); + auto to_object_work = phase_objects.at(B_id); + auto target_received = to_object_work.getReceived(); +// fmt::print( "Object {} has {} received communications.\n", B_id, target_received.size()); + // Check if B has symmetric B <- A received communication + if (target_received.find(A_id) != target_received.end()) { +// fmt::print( " Object {} already has received communication from object {}.\n", B_id, A_id); + } else { +// fmt::print( " Object {} doesn't have received communication from object {}. Pushing to list of communications to add.\n", B_id, A_id); + communications_to_add.push_back(std::make_tuple("recipient", A_id, B_id, bytes)); + } + } else { + fmt::print(" /!\\ Didn't find recipient object {} when searching for communication sent by object {} of {} bytes.\n", B_id, A_id, bytes); + } + } + // Going through A <- ... communications +// fmt::print(" Checking received communications:\n"); + for (auto& [B_id, bytes] : received) { // Going through A <- ... communications +// fmt::print(" Communication received from object {} of {} bytes:\n", B_id, bytes); + // check if B exists for the A <- B communication + if (phase_objects.find(B_id) != phase_objects.end()) { +// fmt::print(" Found sender object {} when searching for communication received by object {} of {} bytes.\n", B_id, A_id, bytes); + auto from_object_work = phase_objects.at(B_id); + auto target_sent = from_object_work.getSent(); +// fmt::print( "Object {} has {} sent communications.\n", B_id, target_sent.size()); + // Check if B has symmetric B -> A received communication + if (target_sent.find(A_id) != target_sent.end()) { +// fmt::print( " Object {} already has sent communication to object {}.\n", B_id, A_id); + } else { +// fmt::print( " Object {} doesn't have sent communication to object {}. Pushing to list of communications to add.\n", B_id, A_id); + communications_to_add.push_back(std::make_tuple("sender", B_id, A_id, bytes)); + } + } else { +// fmt::print(" /!\\ Didn't find sender object {} when searching for communication received by object {} of {} bytes.\n", B_id, A_id, bytes); + } + } + } + + // loop through ranks and add communications + fmt::print("Updating communications for phase {}.\n", phase); + for (auto &[rank_id, rank]: ranks_) { + fmt::print(" Checking objects in rank {}.\n", rank_id); + auto &phaseWork = rank.getPhaseWork(); + auto &phaseWorkAtPhase = phaseWork.at(phase); + auto &objects = phaseWorkAtPhase.getObjectWork(); + for (auto &[obj_id, obj_work]: objects) { + fmt::print(" Checking if object {} needs to be updated.\n", obj_id); + fmt::print(" Communications to update:\n"); + uint64_t i = 0; + for (auto &[object_to_update, sender_id, recipient_id, bytes]: communications_to_add) { + fmt::print(" {} needs to be updated in {} -> {} communication of {} bytes.\n", object_to_update, + sender_id, recipient_id, bytes); + if (object_to_update == "sender" && sender_id == obj_id) { + fmt::print(" Sender to be updated is object on this rank. Updating.\n"); + rank.addObjectSentCommunicationAtPhase(phase, obj_id, recipient_id, bytes); + communications_to_add.erase(communications_to_add.begin() + i); + } else if (object_to_update == "recipient" && recipient_id == obj_id) { + fmt::print(" Recipient to be updated is object on this rank. Updating.\n"); + rank.addObjectReceivedCommunicationAtPhase(phase, obj_id, sender_id, bytes); + communications_to_add.erase(communications_to_add.begin() + i); + } + if (communications_to_add.empty()) { + return; } + i++; } } + } } /** @@ -418,6 +620,240 @@ struct Info { return imbalance; } + /* ------------------- Object QOI getters ------------------- */ + + /** + * \brief Get the id of an object at a given phase + * + * \param[in] object the current object + * + * \return the id + */ + QOIVariantTypes getObjectID(ObjectWork object) const { + return object.getID(); + } + + /** + * \brief Get the rank id of an object at a given phase + * + * \param[in] object the current object + * + * \return the rank id + */ + QOIVariantTypes getObjectRankID(ObjectWork object) const { + auto obj_id = object.getID(); + auto obj_info = object_info_.at(obj_id); + return obj_info.getHome(); + } + + /** + * \brief Get the load of an object at a given phase + * + * \param[in] object the current object + * + * \return the load + */ + QOIVariantTypes getObjectLoad(ObjectWork object) const { + return object.getLoad(); + } + + /** + * \brief Get the received volume of an object at a given phase + * + * \param[in] object the current object + * + * \return the received volume + */ + QOIVariantTypes getObjectReceivedVolume(ObjectWork object) const { + return object.getReceivedVolume(); + } + + /** + * \brief Get the sent volume of an object at a given phase + * + * \param[in] object the current object + * + * \return the sent volume + */ + QOIVariantTypes getObjectSentVolume(ObjectWork object) const { + return object.getSentVolume(); + } + + /** + * \brief Get the max volume of an object at a given phase + * + * \param[in] object the current object + * + * \return the max volume + */ + QOIVariantTypes getObjectMaxVolume(ObjectWork object) const { + return object.getMaxVolume(); + } + + /** + * \brief Get the specified attribute of an object at a given phase + * + * \param[in] object the current object + * + * \return the requested attribute + */ + QOIVariantTypes getObjectAttribute(ObjectWork object, std::string object_qoi) const { + auto obj_attributes = object.getAttributes(); + if (obj_attributes.count(object_qoi) > 0) { + return obj_attributes.at(object_qoi); + } else { + throw std::runtime_error("Invalid Object QOI: " + object_qoi); + } + } + + /* ---------------------------------------------------------- */ + + /* -------------------- Rank QOI getters -------------------- */ + + /** + * \brief Get id of a given rank + * + * \param[in] rank the rank + * \param[in] phase the phase (unused for this QOI) + * + * \return the rank id + */ + QOIVariantTypes getRankID(Rank rank, PhaseType phase) const { return rank.getRankID(); } + + /** + * \brief Get load of a given rank + * + * \param[in] rank the rank + * \param[in] phase the phase + * + * \return the rank load + */ + QOIVariantTypes getRankLoad(Rank rank, PhaseType phase) const { return rank.getLoad(phase); } + + /** + * \brief Get the received volume of a rank at a given phase + * + * \param[in] rank the rank + * \param[in] phase the phase + * + * \return the received volume + */ + QOIVariantTypes getRankReceivedVolume(Rank rank, PhaseType phase) const { + + auto received_volume = 0.; + auto const& phase_objects = rank.getPhaseWork().at(phase).getObjectWork(); + for (auto const& [obj_id, obj_work] : phase_objects) { + received_volume += obj_work.getReceivedVolume(); + } + return received_volume; + } + + /** + * \brief Get the sent volume of a rank at a given phase + * + * \param[in] rank the rank + * \param[in] phase the phase + * + * \return the sent volume + */ + QOIVariantTypes getRankSentVolume(Rank rank, PhaseType phase) const { + auto sent_volume = 0.; + auto const& phase_objects = rank.getPhaseWork().at(phase).getObjectWork(); + for (auto const& [obj_id, obj_work] : phase_objects) { + sent_volume += obj_work.getSentVolume(); + } + return sent_volume; + } + + /** + * \brief Get the number of objects at a given phase for a given rank + * + * \param[in] rank the rank + * \param[in] phase the phase + * + * \return the number of objects + */ + QOIVariantTypes getRankNumObjects(Rank rank, PhaseType phase) const { + auto num_objects = rank.getNumObjects(phase); + return num_objects; + } + + /** + * \brief Get the number of migratable objects at a given phase for a given rank + * + * \param[in] rank the rank + * \param[in] phase the phase + * + * \return the number of migratable objects + */ + QOIVariantTypes getRankNumMigratableObjects(Rank rank, PhaseType phase) const { + auto num_migratable_objects = 0; + auto const& phase_objects = rank.getPhaseWork().at(phase).getObjectWork(); + for (auto const& [obj_id, _] : phase_objects) { + if (object_info_.at(obj_id).isMigratable()) { + num_migratable_objects++; + } + } + return num_migratable_objects; + } + + /** + * \brief Get the total load of migratable objects at a given phase for a given rank + * + * \param[in] rank the rank + * \param[in] phase the phase + * + * \return the total load of migratable objects + */ + QOIVariantTypes getRankMigratableLoad(Rank rank, PhaseType phase) const { + auto migratable_load = 0.; + auto const& phase_objects = rank.getPhaseWork().at(phase).getObjectWork(); + for (auto const& [obj_id, obj_work] : phase_objects) { + if (object_info_.at(obj_id).isMigratable()) { + migratable_load += obj_work.getLoad(); + } + } + return migratable_load; + } + + /** + * \brief Get the total load of sentinel objects at a given phase for a given rank + * + * \param[in] rank the rank + * \param[in] phase the phase + * + * \return the total load of sentinel objects + */ + QOIVariantTypes getRankSentinelLoad(Rank rank, PhaseType phase) const { + auto sentinel_load = 0.; + auto const& phase_objects = rank.getPhaseWork().at(phase).getObjectWork(); + for (auto const& [obj_id, obj_work] : phase_objects) { + if (object_info_.at(obj_id).isSentinel()) { + sentinel_load += obj_work.getLoad(); + } + } + return sentinel_load; + } + + /** + * \brief Get the specified attribute of a rank at a given phase + * + * \param[in] rank the current rank + * \param[in] rank_qoi the attribute + * + * \return the requested attribute + */ + QOIVariantTypes getRankAttribute(Rank rank, std::string rank_qoi, PhaseType phase) const { + auto rank_attributes = rank.getAttributes(); + if (rank_attributes.count(rank_qoi) > 0) { + return rank_attributes.at(rank_qoi); + } else { + throw std::runtime_error("Invalid Rank QOI: " + rank_qoi); + } + } + + /* ---------------------------------------------------------- */ + /** * \brief Serializer for data * diff --git a/src/vt-tv/api/object_communicator.h b/src/vt-tv/api/object_communicator.h index 73c5aa7c1c..c93801f489 100644 --- a/src/vt-tv/api/object_communicator.h +++ b/src/vt-tv/api/object_communicator.h @@ -170,29 +170,57 @@ struct ObjectCommunicator { } } - /** + /** * \brief maximum bytes received or sent at this communicator */ double getMaxVolume() const { - // Search for the maximum value in received - auto max_recv_it = std::max_element( - this->received_.begin(), - this->received_.end(), - [](const std::multimap::value_type& a, const std::multimap::value_type& b) { - return a.second < b.second; - } - ); - - // Search for the maximum value in sent - auto max_sent_it = std::max_element( - this->sent_.begin(), - this->sent_.end(), - [](const std::multimap::value_type& a, const std::multimap::value_type& b) { - return a.second < b.second; - } - ); - - return std::max(max_recv_it->second, max_sent_it->second); + // Search for the maximum value in received and sent (0. if sets are empty) + double max_recv = !this->received_.empty() ? + std::max_element( + this->received_.begin(), + this->received_.end(), + [](const auto& a, const auto& b) { + return a.second < b.second; + })->second : + 0.0; + + double max_sent = !this->sent_.empty() ? + std::max_element( + this->sent_.begin(), + this->sent_.end(), + [](const auto& a, const auto& b) { + return a.second < b.second; + })->second : + 0.0; + + // Return the max + return std::max(max_recv, max_sent); +} + + /** + * \brief Get the total received communication volume for this communicator + * + * \return total received communication volume + */ + double getTotalReceivedVolume() const { + double total = 0.0; + for (const auto& [key, value] : this->received_) { + total += value; + } + return total; + } + + /** + * \brief Get the total sent communication volume for this communicator + * + * \return total sent communication volume + */ + double getTotalSentVolume() const { + double total = 0.0; + for (const auto& [key, value] : this->sent_) { + total += value; + } + return total; } /** diff --git a/src/vt-tv/api/object_info.h b/src/vt-tv/api/object_info.h index 0948009d28..c9729e4f77 100644 --- a/src/vt-tv/api/object_info.h +++ b/src/vt-tv/api/object_info.h @@ -100,6 +100,13 @@ struct ObjectInfo { */ bool isMigratable() const { return migratable_; } + /** + * \brief Get whether the object is sentinel + * + * \return whether it is sentinel + */ + bool isSentinel() const { return !migratable_; } + /** * \brief Get the logical index for the task (if one exists) * diff --git a/src/vt-tv/api/object_work.h b/src/vt-tv/api/object_work.h index 5f694a1805..77226ab299 100644 --- a/src/vt-tv/api/object_work.h +++ b/src/vt-tv/api/object_work.h @@ -169,6 +169,24 @@ struct ObjectWork { return communicator_.getMaxVolume(); } + /** + * \brief Get the total received communication volume for this object + * + * \return total received communication volume + */ + double getReceivedVolume() const { + return communicator_.getTotalReceivedVolume(); + } + + /** + * \brief Get the total sent communication volume for this object + * + * \return total sent communication volume + */ + double getSentVolume() const { + return communicator_.getTotalSentVolume(); + } + /** * \brief Serializer for data * @@ -196,7 +214,6 @@ struct ObjectWork { /// QOIs to be visualized std::unordered_map attributes_; - /// @todo: add communications ObjectCommunicator communicator_; }; diff --git a/src/vt-tv/api/phase_work.h b/src/vt-tv/api/phase_work.h index d81a57e967..cee4a5e128 100644 --- a/src/vt-tv/api/phase_work.h +++ b/src/vt-tv/api/phase_work.h @@ -107,6 +107,24 @@ struct PhaseWork { */ void setCommunications(ElementIDType o_id, ObjectCommunicator& c) { objects_.at(o_id).setCommunications(c); }; + /** + * \brief add a received communication to an object in this phase + * + * \return void + */ + void addObjectReceivedCommunication(ElementIDType o_id, ElementIDType from_id, double bytes) { + objects_.at(o_id).addReceivedCommunications(from_id, bytes); + }; + + /** + * \brief add a sent communication to an object in this phase + * + * \return void + */ + void addObjectSentCommunication(ElementIDType o_id, ElementIDType to_id, double bytes) { + objects_.at(o_id).addSentCommunications(to_id, bytes); + }; + /** * \brief Get maximum bytes received or sent between objects at this phase */ diff --git a/src/vt-tv/api/rank.h b/src/vt-tv/api/rank.h index cd52803736..ccc8f240ee 100644 --- a/src/vt-tv/api/rank.h +++ b/src/vt-tv/api/rank.h @@ -107,6 +107,33 @@ struct Rank { */ auto const& getAttributes() const { return attributes_; } + /** + * \brief Get number of objects at given phase on this rank + * + * \param[in] phase the phase + * + * \return the number of objects + */ + uint64_t getNumObjects(PhaseType phase) const { return phase_info_.at(phase).getObjectWork().size(); } + + /** + * \brief add a received communication to an object at a given phase + * + * \return void + */ + void addObjectReceivedCommunicationAtPhase(PhaseType phase_id, ElementIDType o_id, ElementIDType from_id, double bytes) { + phase_info_.at(phase_id).addObjectReceivedCommunication(o_id, from_id, bytes); + }; + + /** + * \brief add a sent communication to an object at a given phase + * + * \return void + */ + void addObjectSentCommunicationAtPhase(PhaseType phase_id, ElementIDType o_id, ElementIDType to_id, double bytes) { + phase_info_.at(phase_id).addObjectSentCommunication(o_id, to_id, bytes); + }; + /** * \brief Serializer for data * diff --git a/src/vt-tv/api/types.h b/src/vt-tv/api/types.h index 339a9f2ffb..3116cf0a30 100644 --- a/src/vt-tv/api/types.h +++ b/src/vt-tv/api/types.h @@ -59,7 +59,7 @@ using TimeType = double; using CollectionObjGroupIDType = uint64_t; /// Possible QOIs types -using QOIVariantTypes = std::variant; +using QOIVariantTypes = std::variant; } /* end namespace vt::tv */ diff --git a/src/vt-tv/render/render.cc b/src/vt-tv/render/render.cc index 256cb40772..53e1c08549 100644 --- a/src/vt-tv/render/render.cc +++ b/src/vt-tv/render/render.cc @@ -76,6 +76,14 @@ Render::Render(Info in_info) } max_o_per_dim_ = 0; + // Normalize communication edges + for(PhaseType phase = 0; phase < this->n_phases_; phase++) { + if ( selected_phase_ == std::numeric_limits::max() or + selected_phase_ == phase ) { + this->info_.normalizeEdges(phase); + } + } + // Initialize jitter std::srand(std::time(nullptr)); auto const& allObjects = info_.getAllObjectIDs(); @@ -92,6 +100,7 @@ Render::Render(Info in_info) object_qoi_range_ = this->computeObjectQoiRange_(); rank_qoi_range_ = this->computeRankQoiRange_(); object_volume_max_ = this->computeMaxObjectVolume_(); + object_load_max_ = this->info_.getMaxLoad(); }; Render::Render( @@ -135,6 +144,16 @@ Render::Render( } max_o_per_dim_ = 0; + // Normalize communication edges + for(PhaseType phase = 0; phase < this->n_phases_; phase++) { + if ( + selected_phase_ == std::numeric_limits::max() or + selected_phase_ == phase + ) { + this->info_.normalizeEdges(phase); + } + } + // Initialize jitter std::srand(std::time(nullptr)); auto const& allObjects = info_.getAllObjectIDs(); @@ -151,38 +170,38 @@ Render::Render( object_qoi_range_ = this->computeObjectQoiRange_(); rank_qoi_range_ = this->computeRankQoiRange_(); object_volume_max_ = this->computeMaxObjectVolume_(); + object_load_max_ = this->info_.getMaxLoad(); }; double Render::computeMaxObjectVolume_() { double ov_max = this->info_.getMaxVolume(); - this->object_volume_max_ = ov_max; return ov_max; } -std::variant, std::set> Render::computeObjectQoiRange_() { +std::variant, std::set>> Render::computeObjectQoiRange_() { // Initialize object QOI range attributes double oq_max = -1 * std::numeric_limits::infinity(); double oq_min = std::numeric_limits::infinity(); double oq; - std::set oq_all; + std::set> oq_all; // Iterate over all ranks for (PhaseType phase = 0; phase < this->n_phases_; phase++) { auto const& objects = this->info_.getPhaseObjects(phase); for (auto const& [obj_id, obj_work] : objects) { // Update maximum object qoi - if (this->object_qoi_ == "load") { - oq = obj_work.getLoad(); - - if (!continuous_object_qoi_) { + oq = info_.getObjectQoi(obj_id, phase, this->object_qoi_); + if (!continuous_object_qoi_) { + // Allow for integer categorical QOI (i.e. rank_id) + if (oq == static_cast(oq)) { + oq_all.insert(static_cast(oq)); + } else { oq_all.insert(oq); - if(oq_all.size() > 20) { - oq_all.clear(); - continuous_object_qoi_ = true; - } } - } else { - throw std::runtime_error("Invalid QOI: " + this->object_qoi_); + if(oq_all.size() > 20) { + oq_all.clear(); + continuous_object_qoi_ = true; + } } if (oq > oq_max) oq_max = oq; if (oq < oq_min) oq_min = oq; @@ -210,33 +229,29 @@ std::pair Render::computeRankQoiRange_() { // Iterate over all ranks for (uint64_t rank_id = 0; rank_id < this->n_ranks_; rank_id++) { - // Update maximum rank qoi - if (this->rank_qoi_ == "load") { - // Get rank loads per phase - std::unordered_map rank_loads_map = this->info_.getAllLoadsAtRank(rank_id); - - // Get max load for this rank across all phases - auto prmax = std::max_element - ( - std::begin(rank_loads_map), std::end(rank_loads_map), - [] (const std::pair& p1, const std::pair& p2) { - return p1.second < p2.second; - } - ); - rqmax_for_phase = prmax->second; - - // Get min load for this rank across all phases - auto prmin = std::max_element - ( - std::begin(rank_loads_map), std::end(rank_loads_map), - [] (const std::pair& p1, const std::pair& p2) { - return p1.second > p2.second; - } - ); - rqmin_for_phase = prmin->second; - } else { - throw std::runtime_error("Invalid QOI: " + this->object_qoi_); - } + std::unordered_map rank_qoi_map; + rank_qoi_map = this->info_.getAllQOIAtRank(rank_id, this->rank_qoi_); + + // Get max qoi for this rank across all phases + auto prmax = std::max_element + ( + std::begin(rank_qoi_map), std::end(rank_qoi_map), + [] (const std::pair& p1, const std::pair& p2) { + return p1.second < p2.second; + } + ); + rqmax_for_phase = prmax->second; + + // Get min qoi for this rank across all phases + auto prmin = std::max_element + ( + std::begin(rank_qoi_map), std::end(rank_qoi_map), + [] (const std::pair& p1, const std::pair& p2) { + return p1.second > p2.second; + } + ); + rqmin_for_phase = prmin->second; + if (rqmax_for_phase > rq_max) rq_max = rqmax_for_phase; if (rqmin_for_phase < rq_min) rq_min = rqmin_for_phase; } @@ -248,17 +263,11 @@ std::pair Render::computeRankQoiRange_() { double Render::computeRankQoiAverage_(PhaseType phase, std::string qoi) { // Initialize rank QOI range attributes double rq_sum = 0.0; - - if (qoi == "load"){ - auto rank_loads_at_phase = this->info_.getAllRankLoadsAtPhase(phase); - for (auto [rank, rank_load] : rank_loads_at_phase){ - rq_sum += rank_load; - } - return rq_sum / rank_loads_at_phase.size(); - } - else{ - throw std::runtime_error("Invalid QOI: " + qoi); + auto const& rank_loads_at_phase = this->info_.getAllRankQOIAtPhase(phase, qoi); + for (auto const& [rank, rank_load] : rank_loads_at_phase){ + rq_sum += rank_load; } + return rq_sum / rank_loads_at_phase.size(); } std::map> Render::createObjectMapping_(PhaseType phase) { @@ -270,9 +279,9 @@ std::map> Render::create return object_mapping; } -vtkNew Render::createRankMesh_(PhaseType iteration) { +vtkNew Render::createRankMesh_(PhaseType phase) { fmt::print("\n\n"); - fmt::print("----- Creating rank mesh for phase {} -----\n", iteration); + fmt::print("----- Creating rank mesh for phase {} -----\n", phase); vtkNew rank_points_; rank_points_->SetNumberOfPoints(this->n_ranks_); @@ -291,20 +300,16 @@ vtkNew Render::createRankMesh_(PhaseType iteration) { // Insert point based on cartesian coordinates rank_points_->SetPoint(rank_id, offsets[0], offsets[1], offsets[2]); - auto objects = this->info_.getRankObjects(rank_id, iteration); - - double rank_load = 0; - for (auto [id, object] : objects) { - rank_load += object.getLoad(); - } + auto objects = this->info_.getRankObjects(rank_id, phase); - rank_arr->SetTuple1(rank_id, rank_load); + auto rank_qoi_val = this->info_.getRankQOIAtPhase(rank_id, phase, this->rank_qoi_); + rank_arr->SetTuple1(rank_id, rank_qoi_val); } vtkNew pd_mesh; pd_mesh->SetPoints(rank_points_); pd_mesh->GetPointData()->SetScalars(rank_arr); - fmt::print("----- Finished creating rank mesh for phase {} -----\n", iteration); + fmt::print("----- Finished creating rank mesh for phase {} -----\n", phase); return pd_mesh; } @@ -333,7 +338,7 @@ vtkNew Render::createObjectMesh_(PhaseType phase) { // Load array must be added when it is not the object QOI vtkNew l_arr; - if (object_qoi_ != "load") { + if (this->object_qoi_ != "load") { l_arr->SetName("load"); l_arr->SetNumberOfTuples(n_o); } @@ -426,8 +431,13 @@ vtkNew Render::createObjectMesh_(PhaseType phase) { ); // Set object attributes - q_arr->SetTuple1(point_index, objectWork.getLoad()); + ElementIDType obj_id = objectWork.getID(); + auto oq = this->info_.getObjectQoi(obj_id, phase, this->object_qoi_); + q_arr->SetTuple1(point_index, oq); b_arr->SetTuple1(point_index, migratable); + if (this->object_qoi_ != "load") { + l_arr->SetTuple1(point_index, objectWork.getLoad()); + } auto objSent = objectWork.getSent(); for (auto [k, v] : objSent) { @@ -485,6 +495,9 @@ vtkNew Render::createObjectMesh_(PhaseType phase) { pd_mesh->SetLines(lines); pd_mesh->GetPointData()->SetScalars(q_arr); pd_mesh->GetPointData()->AddArray(b_arr); + if (this->object_qoi_ != "load") { + pd_mesh->GetPointData()->AddArray(l_arr); + } pd_mesh->GetCellData()->SetScalars(lineValuesArray); fmt::print("----- Finished creating object mesh -----\n"); @@ -522,7 +535,7 @@ void Render::getRgbFromTab20Colormap_(int index, double& r, double& g, double& b } /*static*/ vtkSmartPointer Render::createColorTransferFunction_( - std::variant, std::set> attribute_range, ColorType ct + std::variant, std::set>> attribute_range, ColorType ct ) { vtkSmartPointer ctf = vtkSmartPointer::New(); ctf->SetNanColorRGBA(1., 1., 1., 0.); @@ -530,16 +543,17 @@ void Render::getRgbFromTab20Colormap_(int index, double& r, double& g, double& b ctf->UseAboveRangeColorOn(); // Make discrete when requested - if(std::holds_alternative>(attribute_range)) { - const std::set& values = std::get>(attribute_range); + if(std::holds_alternative>>(attribute_range)) { + const std::set>& values = std::get>>(attribute_range); + // Handle the set type ctf->DiscretizeOn(); int n_colors = values.size(); ctf->IndexedLookupOn(); ctf->SetNumberOfIndexedColors(n_colors); int i = 0; - for (double v : values) { - ctf->SetAnnotation(v, std::to_string(v)); + for (auto v : values) { + std::visit([&ctf](auto&& val) { ctf->SetAnnotation(val, std::to_string(val)); }, v); // Use discrete color map double r, g, b; getRgbFromTab20Colormap_(i, r, g, b); @@ -604,7 +618,7 @@ void Render::getRgbFromTab20Colormap_(int index, double& r, double& g, double& b const std::string& title, double x, double y, uint64_t font_size, - std::set values + std::set> values ) { vtkSmartPointer scalar_bar_actor = vtkSmartPointer::New(); scalar_bar_actor->SetLookupTable(mapper->GetLookupTable()); @@ -686,7 +700,7 @@ void Render::getRgbFromTab20Colormap_(int index, double& r, double& g, double& b /* static */ vtkSmartPointer Render::createRanksMapper_( PhaseType phase, vtkPolyData* rank_mesh, - std::variant, std::set> rank_qoi_range + std::variant, std::set>> rank_qoi_range ) { // Create square glyphs at ranks vtkSmartPointer rank_glyph = vtkSmartPointer::New(); @@ -714,10 +728,16 @@ void Render::getRgbFromTab20Colormap_(int index, double& r, double& g, double& b if (std::holds_alternative>(rank_qoi_range)) { auto range_pair = std::get>(rank_qoi_range); rank_mapper->SetScalarRange(range_pair.first, range_pair.second); - } else if (std::holds_alternative>(rank_qoi_range)) { - const auto& range_set = std::get>(rank_qoi_range); + } else if (std::holds_alternative>>(rank_qoi_range)) { + const auto& range_set = std::get>>(rank_qoi_range); if (!range_set.empty()) { - rank_mapper->SetScalarRange(*range_set.begin(), *range_set.rbegin()); + auto range_begin = *range_set.begin(); + auto range_end = *range_set.rbegin(); + if (std::holds_alternative(range_begin)) { + rank_mapper->SetScalarRange(std::get(range_begin), std::get(range_end)); + } else { + rank_mapper->SetScalarRange(std::get(range_begin), std::get(range_end)); + } } else { rank_mapper->SetScalarRange(0., 0.); } @@ -744,7 +764,7 @@ void Render::renderPNG( vtkSmartPointer renderer = setupRenderer_(); // Create rank mapper for later use and create corresponding rank actor - std::variant, std::set> rank_qoi_variant(rank_qoi_range_); + std::variant, std::set>> rank_qoi_variant(rank_qoi_range_); vtkSmartPointer rank_mapper = createRanksMapper_( phase, rank_mesh, @@ -871,12 +891,12 @@ void Render::renderPNG( if (glyph_mappers.at(1.0)) { std::string object_qoi_name = "Object " + this->object_qoi_; - std::set values = {}; + std::set> values = {}; // Check continuity of object qoi if (std::holds_alternative>(this->object_qoi_range_)) { values = {}; - } else if (std::holds_alternative>(this->object_qoi_range_)) { - values = std::get>(this->object_qoi_range_); + } else if (std::holds_alternative>>(this->object_qoi_range_)) { + values = std::get>>(this->object_qoi_range_); } else { throw std::runtime_error("Unexpected type in object_qoi_range variant."); } @@ -955,9 +975,6 @@ void Render::generate(uint64_t font_size, uint64_t win_size) { selected_phase_ == std::numeric_limits::max() or selected_phase_ == phase ) { - - this->info_.normalizeEdges(phase); - vtkNew object_mesh = this->createObjectMesh_(phase); vtkNew rank_mesh = this->createRankMesh_(phase); @@ -993,7 +1010,7 @@ void Render::generate(uint64_t font_size, uint64_t win_size) { uint64_t edge_width = 0.03 * window_size / *std::max_element(this->grid_size_.begin(), this->grid_size_.end()); double glyph_factor = 0.8 * this->grid_resolution_ / ( (this->max_o_per_dim_ + 1) - * std::sqrt(this->object_qoi_max_)); + * std::sqrt(object_load_max_)); fmt::print(" Image size: {}x{}px\n", win_size, win_size); fmt::print(" Font size: {}pt\n", font_size); this->renderPNG( diff --git a/src/vt-tv/render/render.h b/src/vt-tv/render/render.h index b9a1f030b7..c3bf1eb5fe 100644 --- a/src/vt-tv/render/render.h +++ b/src/vt-tv/render/render.h @@ -125,12 +125,13 @@ struct Render { uint64_t max_o_per_dim_ = 0; // numeric parameters - std::variant, std::set> object_qoi_range_; + std::variant, std::set>> object_qoi_range_; std::pair rank_qoi_range_; // Maximum object attribute values double object_qoi_max_ = 0.0; double object_volume_max_ = 0.0; + double object_load_max_ = 0.0; // quantities of interest std::string rank_qoi_ = "load"; @@ -161,7 +162,7 @@ struct Render { * * \return object qoi range */ - std::variant, std::set> computeObjectQoiRange_(); + std::variant, std::set>> computeObjectQoiRange_(); /** * \brief Compute range of rank qoi. @@ -209,7 +210,7 @@ struct Render { static void getRgbFromTab20Colormap_(int index, double& r, double& g, double& b); static vtkSmartPointer createColorTransferFunction_( - std::variant, std::set> attribute_range, ColorType ct = ColorType::Default + std::variant, std::set>> attribute_range, ColorType ct = ColorType::Default ); static vtkSmartPointer createScalarBarActor_( @@ -217,7 +218,7 @@ struct Render { const std::string& title, double x, double y, uint64_t font_size = 50, - std::set values = {} + std::set> values = {} ); static vtkSmartPointer setupRenderer_(); @@ -225,7 +226,7 @@ struct Render { static vtkSmartPointer createRanksMapper_( PhaseType phase, vtkPolyData* rank_mesh, - std::variant, std::set> rank_qoi_range + std::variant, std::set>> rank_qoi_range ); /** diff --git a/src/vt-tv/utility/json_reader.cc b/src/vt-tv/utility/json_reader.cc index 1971a84a27..c3a3da306c 100644 --- a/src/vt-tv/utility/json_reader.cc +++ b/src/vt-tv/utility/json_reader.cc @@ -55,13 +55,13 @@ namespace vt::tv::utility { -bool JSONReader::isCompressed() const { +bool JSONReader::isCompressed(std::string const& in_filename) const { bool compressed = true; // determine if the file is compressed or not - std::ifstream is(filename_); + std::ifstream is(in_filename); if (not is.good()) { - auto str = fmt::format("Filename is not valid: {}", filename_); + auto str = fmt::format("Filename is not valid: {}", in_filename); fmt::print(str); assert(false && "Invalid file"); return false; @@ -83,15 +83,15 @@ bool JSONReader::isCompressed() const { return compressed; } -void JSONReader::readFile() { +void JSONReader::readFile(std::string const& in_filename) { using json = nlohmann::json; - if (isCompressed()) { - DecompressionInputContainer c(filename_); + if (isCompressed(in_filename)) { + DecompressionInputContainer c(in_filename); json j = json::parse(c); json_ = std::make_unique(std::move(j)); } else { - std::ifstream is(filename_, std::ios::binary); + std::ifstream is(in_filename, std::ios::binary); assert(is.good() && "File must be good"); json j = json::parse(is); is.close(); @@ -99,7 +99,13 @@ void JSONReader::readFile() { } } -std::unique_ptr JSONReader::parseFile() { +void JSONReader::readString(std::string const& in_json_string) { + using json = nlohmann::json; + json j = json::parse(in_json_string); + json_ = std::make_unique(std::move(j)); +} + +std::unique_ptr JSONReader::parse() { using json = nlohmann::json; assert(json_ != nullptr && "Must have valid json"); @@ -187,12 +193,12 @@ std::unique_ptr JSONReader::parseFile() { } } - std::unordered_map readed_metadata; + std::unordered_map readed_attributes; if (task.find("attributes") != task.end()) { auto attributes = task["attributes"]; if (attributes.is_object()) { for (auto& [key, value] : attributes.items()) { - readed_metadata[key] = value; + readed_attributes[key] = value; } } } @@ -201,7 +207,7 @@ std::unique_ptr JSONReader::parseFile() { objects.try_emplace( object, ObjectWork{ - object, time, std::move(subphase_loads), std::move(readed_user_defined), std::move(readed_metadata) + object, time, std::move(subphase_loads), std::move(readed_user_defined), std::move(readed_attributes) } ); } @@ -223,8 +229,8 @@ std::unique_ptr JSONReader::parseFile() { ElementIDType to_id = to["id"]; assert(bytes.is_number()); - assert(from.is_number()); - assert(to.is_number()); + // assert(from.is_number()); + // assert(to.is_number()); // fmt::print(" From: {}, to: {}\n", from_id, to_id); @@ -236,6 +242,8 @@ std::unique_ptr JSONReader::parseFile() { auto to_it = objects.find(to_id); if (to_it != objects.end()) { to_it->second.addReceivedCommunications(from_id, bytes); + } else { + fmt::print("Warning: Communication {} -> {}: neither sender nor recipient was found in objects.\n", from_id, to_id); } } } diff --git a/src/vt-tv/utility/json_reader.h b/src/vt-tv/utility/json_reader.h index 3734a698e6..b2baa26634 100644 --- a/src/vt-tv/utility/json_reader.h +++ b/src/vt-tv/utility/json_reader.h @@ -57,41 +57,48 @@ namespace vt::tv::utility { /** * \struct JSONReader * - * \brief Reader for JSON files in the LBDataType format. + * \brief Reader for JSON in the LBDataType format. */ struct JSONReader { /** * \brief Construct the reader - * - * \param[in] in_filename the file name to read */ - JSONReader(NodeType in_rank, std::string const& in_filename) - : rank_(in_rank), - filename_(in_filename) + JSONReader(NodeType in_rank) + : rank_(in_rank) { } /** * \brief Check if the file is compressed or not * + * \param[in] in_filename the file name to check + * * \return whether the file is compressed */ - bool isCompressed() const; + bool isCompressed(std::string const& in_filename) const; /** - * \brief Read the JSON file + * \brief Read a given JSON file + * + * \param[in] in_filename the file name to read + */ + void readFile(std::string const& in_filename); + + /** + * \brief Read a given serialized json string + * + * \param[in] in_json_string the serialized json string to read */ - void readFile(); + void readString(std::string const& in_json_string); /** * \brief Parse the json into vt-tv's data structure Info, with a single rank * filled out */ - std::unique_ptr parseFile(); + std::unique_ptr parse(); private: NodeType rank_ = 0; - std::string filename_; std::unique_ptr json_ = nullptr; }; diff --git a/src/vt-tv/utility/parse_render.cc b/src/vt-tv/utility/parse_render.cc index d5b51c98a8..9d8e145865 100644 --- a/src/vt-tv/utility/parse_render.cc +++ b/src/vt-tv/utility/parse_render.cc @@ -80,23 +80,32 @@ void ParseRender::parseAndRender(PhaseType phase_id, std::unique_ptr info) info = std::make_unique(); - #ifdef VT_TV_NUM_THREADS - const int threads = VT_TV_NUM_THREADS; + #ifdef VT_TV_N_THREADS + const int threads = VT_TV_N_THREADS; #else const int threads = 2; #endif - omp_set_num_threads(threads); - # pragma omp parallel for - for (int64_t rank = 0; rank < n_ranks; rank++) { - fmt::print("Reading file for rank {}\n", rank); - utility::JSONReader reader{static_cast(rank), input_dir + "data." + std::to_string(rank) + ".json"}; - reader.readFile(); - auto tmpInfo = reader.parseFile(); - #pragma omp critical - { - info->addInfo(tmpInfo->getObjectInfo(), tmpInfo->getRank(rank)); + #ifdef VT_TV_OPENMP_ENABLED + #if VT_TV_OPENMP_ENABLED + omp_set_num_threads(threads); + fmt::print("vt-tv: Using {} threads\n", threads); + # pragma omp parallel for + #endif + #endif // VT_TV_OPENMP_ENABLED + for (int64_t rank = 0; rank < n_ranks; rank++) { + fmt::print("Reading file for rank {}\n", rank); + utility::JSONReader reader{static_cast(rank)}; + reader.readFile(input_dir + "data." + std::to_string(rank) + ".json"); + auto tmpInfo = reader.parse(); + #ifdef VT_TV_OPENMP_ENABLED + #if VT_TV_OPENMP_ENABLED + #pragma omp critical + #endif + #endif + { + info->addInfo(tmpInfo->getObjectInfo(), tmpInfo->getRank(rank)); + } } - } } std::array qoi_request = { diff --git a/src/vt-tv/utility/parse_render.h b/src/vt-tv/utility/parse_render.h index 9cafab6fb9..e25ae66814 100644 --- a/src/vt-tv/utility/parse_render.h +++ b/src/vt-tv/utility/parse_render.h @@ -51,8 +51,11 @@ #include #include -#include - +#ifdef VT_TV_OPENMP_ENABLED +#if VT_TV_OPENMP_ENABLED + #include +#endif +#endif namespace vt::tv::utility { /** diff --git a/src/vt-tv/utility/qoi_serializer.h b/src/vt-tv/utility/qoi_serializer.h index c0167e318e..5210c3dcd6 100644 --- a/src/vt-tv/utility/qoi_serializer.h +++ b/src/vt-tv/utility/qoi_serializer.h @@ -54,11 +54,13 @@ namespace nlohmann template <> struct adl_serializer<::vt::tv::QOIVariantTypes> { using VariantTypes = ::vt::tv::QOIVariantTypes; + using ElementIDType = ::vt::tv::ElementIDType; // Produce compilation error if variant types were modified static_assert(std::is_same_v>); static_assert(std::is_same_v>); static_assert(std::is_same_v>); + static_assert(std::is_same_v>); static void to_json(json &j, const VariantTypes &value) { std::visit([&](auto const &arg) @@ -68,7 +70,12 @@ namespace nlohmann static void from_json(const json &j, VariantTypes &value) { if (j.is_number_integer()) { - value = j.get(); + auto number = j.get(); + if (number >= std::numeric_limits::min() && number <= std::numeric_limits::max()) { + value = static_cast(number); + } else { + value = static_cast(number); + } } else if (j.is_number_float()) { value = j.get(); } else if (j.is_string()) { diff --git a/tests/test_bindings.py b/tests/test_bindings.py new file mode 100644 index 0000000000..db770e458d --- /dev/null +++ b/tests/test_bindings.py @@ -0,0 +1,33 @@ +import json +import yaml +import vttv + +import sys +import os + +# source dir is the directory a level above this file +source_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) + +with open(f'{source_dir}/tests/test_bindings_conf.yaml', 'r') as stream: + try: + params = yaml.safe_load(stream) + except yaml.YAMLError as exc: + print(exc) + +# make output_visualization_dir directory parameter absolute +params["visualization"]["output_visualization_dir"] = os.path.abspath(params["visualization"]["output_visualization_dir"]) + +params_serialized = yaml.dump(params["visualization"]) + +n_ranks = params["visualization"]["x_ranks"] * params["visualization"]["y_ranks"] * params["visualization"]["z_ranks"] +rank_data = [] + +for rank in range(n_ranks): + with open(f'{source_dir}/tests/unit/lb_test_data/data.{rank}.json', 'r') as f: + data = json.load(f) + + data_serialized = json.dumps(data) + + rank_data.append((data_serialized)) + +vttv.tvFromJson(rank_data, params_serialized, n_ranks) diff --git a/tests/test_bindings_conf.yaml b/tests/test_bindings_conf.yaml new file mode 100644 index 0000000000..c51d26f7d4 --- /dev/null +++ b/tests/test_bindings_conf.yaml @@ -0,0 +1,11 @@ +visualization: + x_ranks: 2 + y_ranks: 2 + z_ranks: 1 + object_jitter: 0.5 + rank_qoi: load + object_qoi: load + save_meshes: true + force_continuous_object_qoi: true + output_visualization_dir: /opt/build/vt-tv/test_output + output_visualization_file_stem: output_file diff --git a/tests/unit/cmake_config.h b/tests/unit/cmake_config.h index 13451c2638..03f33ba848 100644 --- a/tests/unit/cmake_config.h +++ b/tests/unit/cmake_config.h @@ -1 +1 @@ -#define SRC_DIR "/vt/lib/vt-tv" +#define SRC_DIR "/home/pierrelp/Develop/NGA/vt-tv/source" diff --git a/tests/unit/lb_test_data/reader_test_data.json b/tests/unit/lb_test_data/reader_test_data.json index 0772e444cb..f7c887c61b 100644 --- a/tests/unit/lb_test_data/reader_test_data.json +++ b/tests/unit/lb_test_data/reader_test_data.json @@ -11,7 +11,8 @@ "attributes": { "intSample": 1, "doubleSample": 2.213, - "stringSample": "abc" + "stringSample": "abc", + "elementIDSample": 30000000000 } }, "phases": [ @@ -71,7 +72,8 @@ "attributes": { "intSample": -100, "doubleSample": 0.0, - "stringSample": "" + "stringSample": "", + "elementIDSample": 50000000000 } } ], diff --git a/tests/unit/synthetic_attributes/data.0.json b/tests/unit/synthetic_attributes/data.0.json new file mode 100644 index 0000000000..6b87f009db --- /dev/null +++ b/tests/unit/synthetic_attributes/data.0.json @@ -0,0 +1 @@ +{"metadata": {"rank": 0, "shared_node": {"id": 0, "num_nodes": 1, "rank": 0, "size": 4}, "type": "LBDatafile", "attributes": {"intAttribute": 0, "doubleAttribute": 0.0, "elementIDAttribute": 30000000000, "stringAttribute": "id is 0"}}, "phases": [{"communications": [{"bytes": 112.0, "from": {"home": 0, "id": 0, "migratable": false, "type": "object"}, "messages": 2, "to": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "type": "SendRecv"}, {"bytes": 112.0, "from": {"home": 0, "id": 0, "migratable": false, "type": "object"}, "messages": 2, "to": {"home": 2, "id": 9, "migratable": false, "type": "object"}, "type": "SendRecv"}, {"bytes": 1096.0, "from": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "messages": 19, "to": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "type": "SendRecv"}, {"bytes": 1096.0, "from": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "messages": 19, "to": {"home": 2, "id": 9, "migratable": false, "type": "object"}, "type": "SendRecv"}, {"bytes": 64.0, "from": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "messages": 1, "to": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 0, "tasks": [{"entity": {"collection_id": 7, "home": 0, "id": 3407875, "index": [12], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1263000033068238e-05}, {"id": 1, "time": 1.1333999964335817e-05}, {"id": 2, "time": 1.1196000059499056e-05}], "time": 3.379300005690311e-05, "attributes": {"intAttribute": 3407875, "doubleAttribute": 10700727.5, "elementIDAttribute": 30003407875, "stringAttribute": "id is 3407875"}}, {"entity": {"collection_id": 7, "home": 0, "id": 3145731, "index": [11], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1653000001388136e-05}, {"id": 1, "time": 1.1435000033088727e-05}, {"id": 2, "time": 1.1435000033088727e-05}], "time": 3.452300006756559e-05, "attributes": {"intAttribute": 3145731, "doubleAttribute": 9877595.34, "elementIDAttribute": 30003145731, "stringAttribute": "id is 3145731"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2359299, "index": [8], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.7811999896366615e-05}, {"id": 1, "time": 1.8287999864696758e-05}, {"id": 2, "time": 1.7329999991488876e-05}], "time": 5.342999975255225e-05, "attributes": {"intAttribute": 2359299, "doubleAttribute": 7408198.86, "elementIDAttribute": 30002359299, "stringAttribute": "id is 2359299"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2097155, "index": [7], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.012135783000076117}, {"id": 1, "time": 0.011445064000099592}, {"id": 2, "time": 0.013830105999886655}], "time": 0.037410953000062364, "attributes": {"intAttribute": 2097155, "doubleAttribute": 6585066.7, "elementIDAttribute": 30002097155, "stringAttribute": "id is 2097155"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2883587, "index": [10], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1395999990782002e-05}, {"id": 1, "time": 1.1267999980191234e-05}, {"id": 2, "time": 1.142099995377066e-05}], "time": 3.40849999247439e-05, "attributes": {"intAttribute": 2883587, "doubleAttribute": 9054463.18, "elementIDAttribute": 30002883587, "stringAttribute": "id is 2883587"}}, {"entity": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.00025406699933228083}], "time": 0.00025406699933228083, "attributes": {"intAttribute": 1, "doubleAttribute": 3.14, "elementIDAttribute": 30000000001, "stringAttribute": "id is 1"}}, {"entity": {"collection_id": 7, "home": 0, "id": 3932163, "index": [14], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3208000154918409e-05}, {"id": 1, "time": 1.2013999821647303e-05}, {"id": 2, "time": 1.164800005426514e-05}], "time": 3.687000003083085e-05, "attributes": {"intAttribute": 3932163, "doubleAttribute": 12346991.82, "elementIDAttribute": 30003932163, "stringAttribute": "id is 3932163"}}, {"entity": {"collection_id": 7, "home": 0, "id": 524291, "index": [1], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.01717029800011005}, {"id": 1, "time": 0.01329956199992921}, {"id": 2, "time": 0.013931906999914645}], "time": 0.04440176699995391, "attributes": {"intAttribute": 524291, "doubleAttribute": 1646273.74, "elementIDAttribute": 30000524291, "stringAttribute": "id is 524291"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2621443, "index": [9], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1455000048954389e-05}, {"id": 1, "time": 1.137499998549174e-05}, {"id": 2, "time": 2.8864000114481314e-05}], "time": 5.1694000148927444e-05, "attributes": {"intAttribute": 2621443, "doubleAttribute": 8231331.0200000005, "elementIDAttribute": 30002621443, "stringAttribute": "id is 2621443"}}, {"entity": {"home": 0, "id": 4194316, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 0, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194316, "doubleAttribute": 13170152.24, "elementIDAttribute": 30004194316, "stringAttribute": "id is 4194316"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1835011, "index": [6], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.012835011999868584}, {"id": 1, "time": 0.011345321999897351}, {"id": 2, "time": 0.011688463999917076}], "time": 0.03586879799968301, "attributes": {"intAttribute": 1835011, "doubleAttribute": 5761934.54, "elementIDAttribute": 30001835011, "stringAttribute": "id is 1835011"}}, {"entity": {"collection_id": 7, "home": 0, "id": 4194307, "index": [15], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.243699989572633e-05}, {"id": 1, "time": 1.0962000033032382e-05}, {"id": 2, "time": 1.0952999900837312e-05}], "time": 3.4351999829596025e-05, "attributes": {"intAttribute": 4194307, "doubleAttribute": 13170123.98, "elementIDAttribute": 30004194307, "stringAttribute": "id is 4194307"}}, {"entity": {"collection_id": 7, "home": 0, "id": 786435, "index": [2], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.014611307999985002}, {"id": 1, "time": 0.011596255000085876}, {"id": 2, "time": 0.012203061000036541}], "time": 0.03841062400010742, "attributes": {"intAttribute": 786435, "doubleAttribute": 2469405.9, "elementIDAttribute": 30000786435, "stringAttribute": "id is 786435"}}, {"entity": {"collection_id": 7, "home": 0, "id": 3670019, "index": [13], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2453999943318195e-05}, {"id": 1, "time": 1.1266999990766635e-05}, {"id": 2, "time": 1.1582000070120557e-05}], "time": 3.530300000420539e-05, "attributes": {"intAttribute": 3670019, "doubleAttribute": 11523859.66, "elementIDAttribute": 30003670019, "stringAttribute": "id is 3670019"}}, {"entity": {"collection_id": 7, "home": 0, "id": 262147, "index": [0], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013287562999948932}, {"id": 1, "time": 0.011629410000068674}, {"id": 2, "time": 0.011434323000003133}], "time": 0.03635129600002074, "attributes": {"intAttribute": 262147, "doubleAttribute": 823141.5800000001, "elementIDAttribute": 30000262147, "stringAttribute": "id is 262147"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1048579, "index": [3], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.01328959800002849}, {"id": 1, "time": 0.012586304000024029}, {"id": 2, "time": 0.012439846000006582}], "time": 0.0383157480000591, "attributes": {"intAttribute": 1048579, "doubleAttribute": 3292538.06, "elementIDAttribute": 30001048579, "stringAttribute": "id is 1048579"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1310723, "index": [4], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.012713138999970397}, {"id": 1, "time": 0.012018785999998727}, {"id": 2, "time": 0.012984786000060922}], "time": 0.037716711000030045, "attributes": {"intAttribute": 1310723, "doubleAttribute": 4115670.22, "elementIDAttribute": 30001310723, "stringAttribute": "id is 1310723"}}, {"entity": {"home": 0, "id": 3145740, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 0, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 3145740, "doubleAttribute": 9877623.6, "elementIDAttribute": 30003145740, "stringAttribute": "id is 3145740"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1572867, "index": [5], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.012798881999970035}, {"id": 1, "time": 0.01177073200005907}, {"id": 2, "time": 0.011668005000046833}], "time": 0.03623761900007594, "attributes": {"intAttribute": 1572867, "doubleAttribute": 4938802.38, "elementIDAttribute": 30001572867, "stringAttribute": "id is 1572867"}}]}, {"communications": [{"bytes": 1456.0, "from": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "messages": 26, "to": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "type": "SendRecv"}, {"bytes": 1456.0, "from": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "messages": 26, "to": {"home": 2, "id": 9, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 1, "tasks": [{"entity": {"collection_id": 7, "home": 0, "id": 3407875, "index": [12], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 3.207300005669822e-05}, {"id": 1, "time": 1.1347999816280208e-05}, {"id": 2, "time": 1.169400002254406e-05}], "time": 5.658399982166884e-05, "attributes": {"intAttribute": 3407875, "doubleAttribute": 10700727.5, "elementIDAttribute": 30003407875, "stringAttribute": "id is 3407875"}}, {"entity": {"collection_id": 7, "home": 0, "id": 3145731, "index": [11], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3647000059791026e-05}, {"id": 1, "time": 1.1320000112391426e-05}, {"id": 2, "time": 1.1517999837451498e-05}], "time": 3.787500008911593e-05, "attributes": {"intAttribute": 3145731, "doubleAttribute": 9877595.34, "elementIDAttribute": 30003145731, "stringAttribute": "id is 3145731"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2359299, "index": [8], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 2.8260999897611327e-05}, {"id": 1, "time": 2.139399998668523e-05}, {"id": 2, "time": 2.4569000061092083e-05}], "time": 7.545199991909612e-05, "attributes": {"intAttribute": 2359299, "doubleAttribute": 7408198.86, "elementIDAttribute": 30002359299, "stringAttribute": "id is 2359299"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2097155, "index": [7], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013263736999988396}, {"id": 1, "time": 0.013395983999998862}, {"id": 2, "time": 0.014478222999969148}], "time": 0.04114147499990395, "attributes": {"intAttribute": 2097155, "doubleAttribute": 6585066.7, "elementIDAttribute": 30002097155, "stringAttribute": "id is 2097155"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2883587, "index": [10], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3226999953985796e-05}, {"id": 1, "time": 1.1318999895593151e-05}, {"id": 2, "time": 1.1252000149397645e-05}], "time": 3.975300001002324e-05, "attributes": {"intAttribute": 2883587, "doubleAttribute": 9054463.18, "elementIDAttribute": 30002883587, "stringAttribute": "id is 2883587"}}, {"entity": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0002677599998150981}], "time": 0.0002677599998150981, "attributes": {"intAttribute": 1, "doubleAttribute": 3.14, "elementIDAttribute": 30000000001, "stringAttribute": "id is 1"}}, {"entity": {"collection_id": 7, "home": 0, "id": 3932163, "index": [14], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.4005999901200994e-05}, {"id": 1, "time": 1.3610999985758099e-05}, {"id": 2, "time": 1.1327000038363622e-05}], "time": 4.151000007368566e-05, "attributes": {"intAttribute": 3932163, "doubleAttribute": 12346991.82, "elementIDAttribute": 30003932163, "stringAttribute": "id is 3932163"}}, {"entity": {"collection_id": 7, "home": 0, "id": 524291, "index": [1], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013313475999893853}, {"id": 1, "time": 0.0129409730000134}, {"id": 2, "time": 0.014646807999952216}], "time": 0.040902534999759155, "attributes": {"intAttribute": 524291, "doubleAttribute": 1646273.74, "elementIDAttribute": 30000524291, "stringAttribute": "id is 524291"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2621443, "index": [9], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3264000017443323e-05}, {"id": 1, "time": 1.130600003307336e-05}, {"id": 2, "time": 1.1384999879737734e-05}], "time": 3.7073999919812195e-05, "attributes": {"intAttribute": 2621443, "doubleAttribute": 8231331.0200000005, "elementIDAttribute": 30002621443, "stringAttribute": "id is 2621443"}}, {"entity": {"home": 0, "id": 4194316, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 0, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194316, "doubleAttribute": 13170152.24, "elementIDAttribute": 30004194316, "stringAttribute": "id is 4194316"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1835011, "index": [6], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013442894000036176}, {"id": 1, "time": 0.014160143000026437}, {"id": 2, "time": 0.013968384999998307}], "time": 0.041572582000071634, "attributes": {"intAttribute": 1835011, "doubleAttribute": 5761934.54, "elementIDAttribute": 30001835011, "stringAttribute": "id is 1835011"}}, {"entity": {"collection_id": 7, "home": 0, "id": 4194307, "index": [15], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 8.663600010549999e-05}, {"id": 1, "time": 1.3038999895798042e-05}, {"id": 2, "time": 1.1036000159947434e-05}], "time": 0.00013308699999470264, "attributes": {"intAttribute": 4194307, "doubleAttribute": 13170123.98, "elementIDAttribute": 30004194307, "stringAttribute": "id is 4194307"}}, {"entity": {"collection_id": 7, "home": 0, "id": 786435, "index": [2], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013466773000118337}, {"id": 1, "time": 0.013756762999946659}, {"id": 2, "time": 0.012846082999885766}], "time": 0.04007089900005667, "attributes": {"intAttribute": 786435, "doubleAttribute": 2469405.9, "elementIDAttribute": 30000786435, "stringAttribute": "id is 786435"}}, {"entity": {"collection_id": 7, "home": 0, "id": 3670019, "index": [13], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.329099995928118e-05}, {"id": 1, "time": 1.3131000059729558e-05}, {"id": 2, "time": 1.120499996432045e-05}], "time": 4.2018999920401257e-05, "attributes": {"intAttribute": 3670019, "doubleAttribute": 11523859.66, "elementIDAttribute": 30003670019, "stringAttribute": "id is 3670019"}}, {"entity": {"collection_id": 7, "home": 0, "id": 262147, "index": [0], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.01331102400013151}, {"id": 1, "time": 0.01355237699999634}, {"id": 2, "time": 0.011638640000001033}], "time": 0.03850376300010794, "attributes": {"intAttribute": 262147, "doubleAttribute": 823141.5800000001, "elementIDAttribute": 30000262147, "stringAttribute": "id is 262147"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1048579, "index": [3], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013358540999888646}, {"id": 1, "time": 0.012807006999992154}, {"id": 2, "time": 0.013079802999982348}], "time": 0.039248502999953416, "attributes": {"intAttribute": 1048579, "doubleAttribute": 3292538.06, "elementIDAttribute": 30001048579, "stringAttribute": "id is 1048579"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1310723, "index": [4], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013209169999981896}, {"id": 1, "time": 0.014141537000114113}, {"id": 2, "time": 0.012815103000093586}], "time": 0.040167336000195064, "attributes": {"intAttribute": 1310723, "doubleAttribute": 4115670.22, "elementIDAttribute": 30001310723, "stringAttribute": "id is 1310723"}}, {"entity": {"home": 0, "id": 3145740, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 8.358000059160986e-06}], "time": 8.358000059160986e-06, "attributes": {"intAttribute": 3145740, "doubleAttribute": 9877623.6, "elementIDAttribute": 30003145740, "stringAttribute": "id is 3145740"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1572867, "index": [5], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.012924904000101378}, {"id": 1, "time": 0.012263890999975047}, {"id": 2, "time": 0.013286632000017562}], "time": 0.038476590000072974, "attributes": {"intAttribute": 1572867, "doubleAttribute": 4938802.38, "elementIDAttribute": 30001572867, "stringAttribute": "id is 1572867"}}]}, {"communications": [{"bytes": 1288.0, "from": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "messages": 23, "to": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "type": "SendRecv"}, {"bytes": 1288.0, "from": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "messages": 23, "to": {"home": 2, "id": 9, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 2, "tasks": [{"entity": {"collection_id": 7, "home": 0, "id": 3407875, "index": [12], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2738000123135862e-05}, {"id": 1, "time": 1.1436000022513326e-05}, {"id": 2, "time": 1.118099999075639e-05}], "time": 3.6866000073132454e-05, "attributes": {"intAttribute": 3407875, "doubleAttribute": 10700727.5, "elementIDAttribute": 30003407875, "stringAttribute": "id is 3407875"}}, {"entity": {"collection_id": 7, "home": 0, "id": 3145731, "index": [11], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3451999848257401e-05}, {"id": 1, "time": 1.1465999932624982e-05}, {"id": 2, "time": 1.1385999869162333e-05}], "time": 3.73019997823576e-05, "attributes": {"intAttribute": 3145731, "doubleAttribute": 9877595.34, "elementIDAttribute": 30003145731, "stringAttribute": "id is 3145731"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2359299, "index": [8], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 2.692399993975414e-05}, {"id": 1, "time": 1.2637000054382952e-05}, {"id": 2, "time": 1.4423000038732425e-05}], "time": 5.5989000202316674e-05, "attributes": {"intAttribute": 2359299, "doubleAttribute": 7408198.86, "elementIDAttribute": 30002359299, "stringAttribute": "id is 2359299"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2097155, "index": [7], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.01302885200016135}, {"id": 1, "time": 0.011140804999968168}, {"id": 2, "time": 0.011143128999947294}], "time": 0.03531501399993431, "attributes": {"intAttribute": 2097155, "doubleAttribute": 6585066.7, "elementIDAttribute": 30002097155, "stringAttribute": "id is 2097155"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2883587, "index": [10], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3208000154918409e-05}, {"id": 1, "time": 1.2664999985645409e-05}, {"id": 2, "time": 1.184200004900049e-05}], "time": 3.886500007865834e-05, "attributes": {"intAttribute": 2883587, "doubleAttribute": 9054463.18, "elementIDAttribute": 30002883587, "stringAttribute": "id is 2883587"}}, {"entity": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0002602630004275852}], "time": 0.0002602630004275852, "attributes": {"intAttribute": 1, "doubleAttribute": 3.14, "elementIDAttribute": 30000000001, "stringAttribute": "id is 1"}}, {"entity": {"collection_id": 7, "home": 0, "id": 3932163, "index": [14], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3362999879973358e-05}, {"id": 1, "time": 1.3316999911694438e-05}, {"id": 2, "time": 1.1350000022503082e-05}], "time": 4.196199984107807e-05, "attributes": {"intAttribute": 3932163, "doubleAttribute": 12346991.82, "elementIDAttribute": 30003932163, "stringAttribute": "id is 3932163"}}, {"entity": {"collection_id": 7, "home": 0, "id": 524291, "index": [1], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.015159556999833512}, {"id": 1, "time": 0.013344824000114386}, {"id": 2, "time": 0.012729680999882476}], "time": 0.04123558899982527, "attributes": {"intAttribute": 524291, "doubleAttribute": 1646273.74, "elementIDAttribute": 30000524291, "stringAttribute": "id is 524291"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2621443, "index": [9], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.273399993806379e-05}, {"id": 1, "time": 2.7326999997967505e-05}, {"id": 2, "time": 1.1221000022487715e-05}], "time": 5.2964999895266374e-05, "attributes": {"intAttribute": 2621443, "doubleAttribute": 8231331.0200000005, "elementIDAttribute": 30002621443, "stringAttribute": "id is 2621443"}}, {"entity": {"home": 0, "id": 4194316, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 0, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194316, "doubleAttribute": 13170152.24, "elementIDAttribute": 30004194316, "stringAttribute": "id is 4194316"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1835011, "index": [6], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013407750999931523}, {"id": 1, "time": 0.011493512000015471}, {"id": 2, "time": 0.01166658100009954}], "time": 0.03656975200010493, "attributes": {"intAttribute": 1835011, "doubleAttribute": 5761934.54, "elementIDAttribute": 30001835011, "stringAttribute": "id is 1835011"}}, {"entity": {"collection_id": 7, "home": 0, "id": 4194307, "index": [15], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 8.264500002042041e-05}, {"id": 1, "time": 1.279600019188365e-05}, {"id": 2, "time": 1.0963000022456981e-05}], "time": 0.0001174350002202118, "attributes": {"intAttribute": 4194307, "doubleAttribute": 13170123.98, "elementIDAttribute": 30004194307, "stringAttribute": "id is 4194307"}}, {"entity": {"collection_id": 7, "home": 0, "id": 786435, "index": [2], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.015538076999973782}, {"id": 1, "time": 0.012458989999913683}, {"id": 2, "time": 0.012939388000177132}], "time": 0.040937479000149324, "attributes": {"intAttribute": 786435, "doubleAttribute": 2469405.9, "elementIDAttribute": 30000786435, "stringAttribute": "id is 786435"}}, {"entity": {"collection_id": 7, "home": 0, "id": 3670019, "index": [13], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2489000027926522e-05}, {"id": 1, "time": 1.2643999980355147e-05}, {"id": 2, "time": 1.118199998018099e-05}], "time": 3.840299996227259e-05, "attributes": {"intAttribute": 3670019, "doubleAttribute": 11523859.66, "elementIDAttribute": 30003670019, "stringAttribute": "id is 3670019"}}, {"entity": {"collection_id": 7, "home": 0, "id": 262147, "index": [0], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.014141193000114072}, {"id": 1, "time": 0.012680075999924156}, {"id": 2, "time": 0.011292222000065522}], "time": 0.038116471000194, "attributes": {"intAttribute": 262147, "doubleAttribute": 823141.5800000001, "elementIDAttribute": 30000262147, "stringAttribute": "id is 262147"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1048579, "index": [3], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.011973100000204795}, {"id": 1, "time": 0.013109084000006987}, {"id": 2, "time": 0.011939592999851811}], "time": 0.03702433199987354, "attributes": {"intAttribute": 1048579, "doubleAttribute": 3292538.06, "elementIDAttribute": 30001048579, "stringAttribute": "id is 1048579"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1310723, "index": [4], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.01349759599997924}, {"id": 1, "time": 0.012846610999986297}, {"id": 2, "time": 0.012192292999998244}], "time": 0.038538068999969255, "attributes": {"intAttribute": 1310723, "doubleAttribute": 4115670.22, "elementIDAttribute": 30001310723, "stringAttribute": "id is 1310723"}}, {"entity": {"home": 0, "id": 3145740, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 4.237999974066042e-06}], "time": 4.237999974066042e-06, "attributes": {"intAttribute": 3145740, "doubleAttribute": 9877623.6, "elementIDAttribute": 30003145740, "stringAttribute": "id is 3145740"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1572867, "index": [5], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013382446999912645}, {"id": 1, "time": 0.011518686000044909}, {"id": 2, "time": 0.012687144999972588}], "time": 0.03758975300002021, "attributes": {"intAttribute": 1572867, "doubleAttribute": 4938802.38, "elementIDAttribute": 30001572867, "stringAttribute": "id is 1572867"}}]}, {"communications": [{"bytes": 1400.0, "from": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "messages": 25, "to": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "type": "SendRecv"}, {"bytes": 1400.0, "from": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "messages": 25, "to": {"home": 2, "id": 9, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 3, "tasks": [{"entity": {"collection_id": 7, "home": 0, "id": 3407875, "index": [12], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1325000059514423e-05}, {"id": 1, "time": 3.178300016770663e-05}, {"id": 2, "time": 1.1463999953775783e-05}], "time": 5.561600028158864e-05, "attributes": {"intAttribute": 3407875, "doubleAttribute": 10700727.5, "elementIDAttribute": 30003407875, "stringAttribute": "id is 3407875"}}, {"entity": {"collection_id": 7, "home": 0, "id": 3145731, "index": [11], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1807999953816761e-05}, {"id": 1, "time": 1.2814000001526438e-05}, {"id": 2, "time": 1.1385999869162333e-05}], "time": 3.698399973472988e-05, "attributes": {"intAttribute": 3145731, "doubleAttribute": 9877595.34, "elementIDAttribute": 30003145731, "stringAttribute": "id is 3145731"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2359299, "index": [8], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.6692999906808836e-05}, {"id": 1, "time": 4.5438999904945376e-05}, {"id": 2, "time": 1.9350000002305023e-05}], "time": 8.240999977715546e-05, "attributes": {"intAttribute": 2359299, "doubleAttribute": 7408198.86, "elementIDAttribute": 30002359299, "stringAttribute": "id is 2359299"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2097155, "index": [7], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013297282000166888}, {"id": 1, "time": 0.012697454000090147}, {"id": 2, "time": 0.012643059000083667}], "time": 0.038640259000203514, "attributes": {"intAttribute": 2097155, "doubleAttribute": 6585066.7, "elementIDAttribute": 30002097155, "stringAttribute": "id is 2097155"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2883587, "index": [10], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1549999953786028e-05}, {"id": 1, "time": 4.47059999260091e-05}, {"id": 2, "time": 1.1425000138842734e-05}], "time": 6.939200011402136e-05, "attributes": {"intAttribute": 2883587, "doubleAttribute": 9054463.18, "elementIDAttribute": 30002883587, "stringAttribute": "id is 2883587"}}, {"entity": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0020719340009236475}], "time": 0.0020719340009236475, "attributes": {"intAttribute": 1, "doubleAttribute": 3.14, "elementIDAttribute": 30000000001, "stringAttribute": "id is 1"}}, {"entity": {"collection_id": 7, "home": 0, "id": 3932163, "index": [14], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3030999980401248e-05}, {"id": 1, "time": 3.096699992966023e-05}, {"id": 2, "time": 1.1311999969620956e-05}], "time": 5.9438999869598774e-05, "attributes": {"intAttribute": 3932163, "doubleAttribute": 12346991.82, "elementIDAttribute": 30003932163, "stringAttribute": "id is 3932163"}}, {"entity": {"collection_id": 7, "home": 0, "id": 524291, "index": [1], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013460668999869085}, {"id": 1, "time": 0.016113513999926}, {"id": 2, "time": 0.013188821000085227}], "time": 0.04276460099981705, "attributes": {"intAttribute": 524291, "doubleAttribute": 1646273.74, "elementIDAttribute": 30000524291, "stringAttribute": "id is 524291"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2621443, "index": [9], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1512000128277577e-05}, {"id": 1, "time": 1.2014000049020979e-05}, {"id": 2, "time": 1.1425999900893657e-05}], "time": 3.6351000062495586e-05, "attributes": {"intAttribute": 2621443, "doubleAttribute": 8231331.0200000005, "elementIDAttribute": 30002621443, "stringAttribute": "id is 2621443"}}, {"entity": {"home": 0, "id": 4194316, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 0, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194316, "doubleAttribute": 13170152.24, "elementIDAttribute": 30004194316, "stringAttribute": "id is 4194316"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1835011, "index": [6], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.012403900999970574}, {"id": 1, "time": 0.012733255000057397}, {"id": 2, "time": 0.012130471999853398}], "time": 0.03729055899998457, "attributes": {"intAttribute": 1835011, "doubleAttribute": 5761934.54, "elementIDAttribute": 30001835011, "stringAttribute": "id is 1835011"}}, {"entity": {"collection_id": 7, "home": 0, "id": 4194307, "index": [15], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 2.590799999779847e-05}, {"id": 1, "time": 1.1574999916774686e-05}, {"id": 2, "time": 1.1059999906137818e-05}], "time": 5.8128999853579444e-05, "attributes": {"intAttribute": 4194307, "doubleAttribute": 13170123.98, "elementIDAttribute": 30004194307, "stringAttribute": "id is 4194307"}}, {"entity": {"collection_id": 7, "home": 0, "id": 786435, "index": [2], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.012210163999952783}, {"id": 1, "time": 0.01291338100008943}, {"id": 2, "time": 0.01288692599996466}], "time": 0.03801152000005459, "attributes": {"intAttribute": 786435, "doubleAttribute": 2469405.9, "elementIDAttribute": 30000786435, "stringAttribute": "id is 786435"}}, {"entity": {"collection_id": 7, "home": 0, "id": 3670019, "index": [13], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2190999996164464e-05}, {"id": 1, "time": 1.1663000123007805e-05}, {"id": 2, "time": 1.1801000027844566e-05}], "time": 3.757600006792927e-05, "attributes": {"intAttribute": 3670019, "doubleAttribute": 11523859.66, "elementIDAttribute": 30003670019, "stringAttribute": "id is 3670019"}}, {"entity": {"collection_id": 7, "home": 0, "id": 262147, "index": [0], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.014387738000095851}, {"id": 1, "time": 0.012370364999924277}, {"id": 2, "time": 0.011778523999964818}], "time": 0.03855413400015095, "attributes": {"intAttribute": 262147, "doubleAttribute": 823141.5800000001, "elementIDAttribute": 30000262147, "stringAttribute": "id is 262147"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1048579, "index": [3], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013870577000034245}, {"id": 1, "time": 0.014034989000037967}, {"id": 2, "time": 0.013828160000002754}], "time": 0.04173491100004867, "attributes": {"intAttribute": 1048579, "doubleAttribute": 3292538.06, "elementIDAttribute": 30001048579, "stringAttribute": "id is 1048579"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1310723, "index": [4], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013303500000120039}, {"id": 1, "time": 0.01298425999993924}, {"id": 2, "time": 0.01271742699987044}], "time": 0.0390069099998982, "attributes": {"intAttribute": 1310723, "doubleAttribute": 4115670.22, "elementIDAttribute": 30001310723, "stringAttribute": "id is 1310723"}}, {"entity": {"home": 0, "id": 3145740, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 3.857000137941213e-06}], "time": 3.857000137941213e-06, "attributes": {"intAttribute": 3145740, "doubleAttribute": 9877623.6, "elementIDAttribute": 30003145740, "stringAttribute": "id is 3145740"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1572867, "index": [5], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.014377588999877844}, {"id": 1, "time": 0.016316691999918476}, {"id": 2, "time": 0.012348237000196605}], "time": 0.043043509999961316, "attributes": {"intAttribute": 1572867, "doubleAttribute": 4938802.38, "elementIDAttribute": 30001572867, "stringAttribute": "id is 1572867"}}]}, {"communications": [{"bytes": 1232.0, "from": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "messages": 22, "to": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "type": "SendRecv"}, {"bytes": 1232.0, "from": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "messages": 22, "to": {"home": 2, "id": 9, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 4, "tasks": [{"entity": {"collection_id": 7, "home": 0, "id": 3407875, "index": [12], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3351000006878166e-05}, {"id": 1, "time": 1.1402999916754197e-05}, {"id": 2, "time": 1.152400000137277e-05}], "time": 3.728799993041321e-05, "attributes": {"intAttribute": 3407875, "doubleAttribute": 10700727.5, "elementIDAttribute": 30003407875, "stringAttribute": "id is 3407875"}}, {"entity": {"collection_id": 7, "home": 0, "id": 3145731, "index": [11], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3724000154979876e-05}, {"id": 1, "time": 1.163300021289615e-05}, {"id": 2, "time": 1.2607000144271296e-05}], "time": 3.890100038006494e-05, "attributes": {"intAttribute": 3145731, "doubleAttribute": 9877595.34, "elementIDAttribute": 30003145731, "stringAttribute": "id is 3145731"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2359299, "index": [8], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 2.8590000056283316e-05}, {"id": 1, "time": 1.8149999959859997e-05}, {"id": 2, "time": 4.6427000143012265e-05}], "time": 9.408300002178294e-05, "attributes": {"intAttribute": 2359299, "doubleAttribute": 7408198.86, "elementIDAttribute": 30002359299, "stringAttribute": "id is 2359299"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2097155, "index": [7], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.01314711800000623}, {"id": 1, "time": 0.01255147200004103}, {"id": 2, "time": 0.012167367999836642}], "time": 0.03786792899995817, "attributes": {"intAttribute": 2097155, "doubleAttribute": 6585066.7, "elementIDAttribute": 30002097155, "stringAttribute": "id is 2097155"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2883587, "index": [10], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3398999954006285e-05}, {"id": 1, "time": 1.1916999937966466e-05}, {"id": 2, "time": 4.9223999894820736e-05}], "time": 7.6409999792304e-05, "attributes": {"intAttribute": 2883587, "doubleAttribute": 9054463.18, "elementIDAttribute": 30002883587, "stringAttribute": "id is 2883587"}}, {"entity": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.00024517499991816294}], "time": 0.00024517499991816294, "attributes": {"intAttribute": 1, "doubleAttribute": 3.14, "elementIDAttribute": 30000000001, "stringAttribute": "id is 1"}}, {"entity": {"collection_id": 7, "home": 0, "id": 3932163, "index": [14], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3180999985706876e-05}, {"id": 1, "time": 1.4721000070494483e-05}, {"id": 2, "time": 1.1459000006652786e-05}], "time": 4.374200011625362e-05, "attributes": {"intAttribute": 3932163, "doubleAttribute": 12346991.82, "elementIDAttribute": 30003932163, "stringAttribute": "id is 3932163"}}, {"entity": {"collection_id": 7, "home": 0, "id": 524291, "index": [1], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.014091880000023593}, {"id": 1, "time": 0.013628175999883752}, {"id": 2, "time": 0.01749480700004824}], "time": 0.045216759999902933, "attributes": {"intAttribute": 524291, "doubleAttribute": 1646273.74, "elementIDAttribute": 30000524291, "stringAttribute": "id is 524291"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2621443, "index": [9], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3223999985711998e-05}, {"id": 1, "time": 1.1392000033083605e-05}, {"id": 2, "time": 2.7757999987443327e-05}], "time": 5.3780000143888174e-05, "attributes": {"intAttribute": 2621443, "doubleAttribute": 8231331.0200000005, "elementIDAttribute": 30002621443, "stringAttribute": "id is 2621443"}}, {"entity": {"home": 0, "id": 4194316, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 0, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194316, "doubleAttribute": 13170152.24, "elementIDAttribute": 30004194316, "stringAttribute": "id is 4194316"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1835011, "index": [6], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.012805462999949668}, {"id": 1, "time": 0.012705186999937723}, {"id": 2, "time": 0.01198388700004216}], "time": 0.03749551600003542, "attributes": {"intAttribute": 1835011, "doubleAttribute": 5761934.54, "elementIDAttribute": 30001835011, "stringAttribute": "id is 1835011"}}, {"entity": {"collection_id": 7, "home": 0, "id": 4194307, "index": [15], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 3.152899989800062e-05}, {"id": 1, "time": 1.2919000027977745e-05}, {"id": 2, "time": 1.0931000133496127e-05}], "time": 6.66099999762082e-05, "attributes": {"intAttribute": 4194307, "doubleAttribute": 13170123.98, "elementIDAttribute": 30004194307, "stringAttribute": "id is 4194307"}}, {"entity": {"collection_id": 7, "home": 0, "id": 786435, "index": [2], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013776075999885506}, {"id": 1, "time": 0.013158003000171448}, {"id": 2, "time": 0.01307405700003983}], "time": 0.0400094030001128, "attributes": {"intAttribute": 786435, "doubleAttribute": 2469405.9, "elementIDAttribute": 30000786435, "stringAttribute": "id is 786435"}}, {"entity": {"collection_id": 7, "home": 0, "id": 3670019, "index": [13], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2876000027972623e-05}, {"id": 1, "time": 1.4290000081018661e-05}, {"id": 2, "time": 1.1431999837441253e-05}], "time": 4.108499979338376e-05, "attributes": {"intAttribute": 3670019, "doubleAttribute": 11523859.66, "elementIDAttribute": 30003670019, "stringAttribute": "id is 3670019"}}, {"entity": {"collection_id": 7, "home": 0, "id": 262147, "index": [0], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.015777264999996987}, {"id": 1, "time": 0.013422217999959685}, {"id": 2, "time": 0.011981525999999576}], "time": 0.04118258500011507, "attributes": {"intAttribute": 262147, "doubleAttribute": 823141.5800000001, "elementIDAttribute": 30000262147, "stringAttribute": "id is 262147"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1048579, "index": [3], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013267266000184463}, {"id": 1, "time": 0.013495324999894365}, {"id": 2, "time": 0.01307893500006685}], "time": 0.039843414000188204, "attributes": {"intAttribute": 1048579, "doubleAttribute": 3292538.06, "elementIDAttribute": 30001048579, "stringAttribute": "id is 1048579"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1310723, "index": [4], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013401520999877903}, {"id": 1, "time": 0.013206610999986879}, {"id": 2, "time": 0.013384857999881206}], "time": 0.03999488999966161, "attributes": {"intAttribute": 1310723, "doubleAttribute": 4115670.22, "elementIDAttribute": 30001310723, "stringAttribute": "id is 1310723"}}, {"entity": {"home": 0, "id": 3145740, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 4.51300002168864e-06}], "time": 4.51300002168864e-06, "attributes": {"intAttribute": 3145740, "doubleAttribute": 9877623.6, "elementIDAttribute": 30003145740, "stringAttribute": "id is 3145740"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1572867, "index": [5], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013142926000000443}, {"id": 1, "time": 0.01343580100001418}, {"id": 2, "time": 0.012998050000078365}], "time": 0.03957783999999265, "attributes": {"intAttribute": 1572867, "doubleAttribute": 4938802.38, "elementIDAttribute": 30001572867, "stringAttribute": "id is 1572867"}}]}, {"communications": [{"bytes": 1288.0, "from": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "messages": 23, "to": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "type": "SendRecv"}, {"bytes": 1288.0, "from": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "messages": 23, "to": {"home": 2, "id": 9, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 5, "tasks": [{"entity": {"collection_id": 7, "home": 0, "id": 3407875, "index": [12], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1574999916774686e-05}, {"id": 1, "time": 1.319099987995287e-05}, {"id": 2, "time": 1.1347000054229284e-05}], "time": 3.700299976117094e-05, "attributes": {"intAttribute": 3407875, "doubleAttribute": 10700727.5, "elementIDAttribute": 30003407875, "stringAttribute": "id is 3407875"}}, {"entity": {"collection_id": 7, "home": 0, "id": 3145731, "index": [11], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1872999948536744e-05}, {"id": 1, "time": 1.3524999985747854e-05}, {"id": 2, "time": 1.149099989561364e-05}], "time": 3.8017999941075686e-05, "attributes": {"intAttribute": 3145731, "doubleAttribute": 9877595.34, "elementIDAttribute": 30003145731, "stringAttribute": "id is 3145731"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2359299, "index": [8], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 2.604899987090903e-05}, {"id": 1, "time": 2.685300000848656e-05}, {"id": 2, "time": 2.2642999965682975e-05}], "time": 7.636999976057268e-05, "attributes": {"intAttribute": 2359299, "doubleAttribute": 7408198.86, "elementIDAttribute": 30002359299, "stringAttribute": "id is 2359299"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2097155, "index": [7], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013983951999989586}, {"id": 1, "time": 0.01310891499997524}, {"id": 2, "time": 0.013344388999939838}], "time": 0.040439094000021214, "attributes": {"intAttribute": 2097155, "doubleAttribute": 6585066.7, "elementIDAttribute": 30002097155, "stringAttribute": "id is 2097155"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2883587, "index": [10], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1718999985532719e-05}, {"id": 1, "time": 1.3219000038589002e-05}, {"id": 2, "time": 1.1557000107131898e-05}], "time": 3.8519000099768164e-05, "attributes": {"intAttribute": 2883587, "doubleAttribute": 9054463.18, "elementIDAttribute": 30002883587, "stringAttribute": "id is 2883587"}}, {"entity": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0002935210002306121}], "time": 0.0002935210002306121, "attributes": {"intAttribute": 1, "doubleAttribute": 3.14, "elementIDAttribute": 30000000001, "stringAttribute": "id is 1"}}, {"entity": {"collection_id": 7, "home": 0, "id": 3932163, "index": [14], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2901999980385881e-05}, {"id": 1, "time": 1.2208000043756329e-05}, {"id": 2, "time": 1.3334000186659978e-05}], "time": 4.294200016374816e-05, "attributes": {"intAttribute": 3932163, "doubleAttribute": 12346991.82, "elementIDAttribute": 30003932163, "stringAttribute": "id is 3932163"}}, {"entity": {"collection_id": 7, "home": 0, "id": 524291, "index": [1], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.01647633099992163}, {"id": 1, "time": 0.014345187999879272}, {"id": 2, "time": 0.013523729999860734}], "time": 0.04434773999969366, "attributes": {"intAttribute": 524291, "doubleAttribute": 1646273.74, "elementIDAttribute": 30000524291, "stringAttribute": "id is 524291"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2621443, "index": [9], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2129000197091955e-05}, {"id": 1, "time": 1.350799993815599e-05}, {"id": 2, "time": 1.1574999916774686e-05}], "time": 6.084200003897422e-05, "attributes": {"intAttribute": 2621443, "doubleAttribute": 8231331.0200000005, "elementIDAttribute": 30002621443, "stringAttribute": "id is 2621443"}}, {"entity": {"home": 0, "id": 4194316, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 0, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194316, "doubleAttribute": 13170152.24, "elementIDAttribute": 30004194316, "stringAttribute": "id is 4194316"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1835011, "index": [6], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.01308439400008865}, {"id": 1, "time": 0.01299513900016791}, {"id": 2, "time": 0.012793085000112114}], "time": 0.03887382400034767, "attributes": {"intAttribute": 1835011, "doubleAttribute": 5761934.54, "elementIDAttribute": 30001835011, "stringAttribute": "id is 1835011"}}, {"entity": {"collection_id": 7, "home": 0, "id": 4194307, "index": [15], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 2.728699996623618e-05}, {"id": 1, "time": 1.1581000080695958e-05}, {"id": 2, "time": 1.2862999938079156e-05}], "time": 6.13089998751093e-05, "attributes": {"intAttribute": 4194307, "doubleAttribute": 13170123.98, "elementIDAttribute": 30004194307, "stringAttribute": "id is 4194307"}}, {"entity": {"collection_id": 7, "home": 0, "id": 786435, "index": [2], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.014645882000195343}, {"id": 1, "time": 0.014650694000010844}, {"id": 2, "time": 0.012880653000138409}], "time": 0.04217865100031304, "attributes": {"intAttribute": 786435, "doubleAttribute": 2469405.9, "elementIDAttribute": 30000786435, "stringAttribute": "id is 786435"}}, {"entity": {"collection_id": 7, "home": 0, "id": 3670019, "index": [13], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 2.7937000140809687e-05}, {"id": 1, "time": 3.209199985576561e-05}, {"id": 2, "time": 1.3195999827075866e-05}], "time": 7.53039998926397e-05, "attributes": {"intAttribute": 3670019, "doubleAttribute": 11523859.66, "elementIDAttribute": 30003670019, "stringAttribute": "id is 3670019"}}, {"entity": {"collection_id": 7, "home": 0, "id": 262147, "index": [0], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.015702860999908808}, {"id": 1, "time": 0.012289077000104953}, {"id": 2, "time": 0.01309722100018007}], "time": 0.04109098900016761, "attributes": {"intAttribute": 262147, "doubleAttribute": 823141.5800000001, "elementIDAttribute": 30000262147, "stringAttribute": "id is 262147"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1048579, "index": [3], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013624179999851549}, {"id": 1, "time": 0.013122818000056213}, {"id": 2, "time": 0.012883665999879668}], "time": 0.03965440999991188, "attributes": {"intAttribute": 1048579, "doubleAttribute": 3292538.06, "elementIDAttribute": 30001048579, "stringAttribute": "id is 1048579"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1310723, "index": [4], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.012043287000096825}, {"id": 1, "time": 0.01316712700008793}, {"id": 2, "time": 0.012471733999973367}], "time": 0.03768403100002615, "attributes": {"intAttribute": 1310723, "doubleAttribute": 4115670.22, "elementIDAttribute": 30001310723, "stringAttribute": "id is 1310723"}}, {"entity": {"home": 0, "id": 3145740, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 4.416000138007803e-06}], "time": 4.416000138007803e-06, "attributes": {"intAttribute": 3145740, "doubleAttribute": 9877623.6, "elementIDAttribute": 30003145740, "stringAttribute": "id is 3145740"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1572867, "index": [5], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013213475999918955}, {"id": 1, "time": 0.013411174999873765}, {"id": 2, "time": 0.01332460000003266}], "time": 0.03995036999981494, "attributes": {"intAttribute": 1572867, "doubleAttribute": 4938802.38, "elementIDAttribute": 30001572867, "stringAttribute": "id is 1572867"}}]}, {"communications": [{"bytes": 1344.0, "from": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "messages": 24, "to": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "type": "SendRecv"}, {"bytes": 1344.0, "from": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "messages": 24, "to": {"home": 2, "id": 9, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 6, "tasks": [{"entity": {"collection_id": 7, "home": 0, "id": 3407875, "index": [12], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1368000059519545e-05}, {"id": 1, "time": 1.133800014940789e-05}, {"id": 2, "time": 1.3019000107306056e-05}], "time": 3.662700032691646e-05, "attributes": {"intAttribute": 3407875, "doubleAttribute": 10700727.5, "elementIDAttribute": 30003407875, "stringAttribute": "id is 3407875"}}, {"entity": {"collection_id": 7, "home": 0, "id": 3145731, "index": [11], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1494999853312038e-05}, {"id": 1, "time": 1.1521000033098971e-05}, {"id": 2, "time": 1.3502999991032993e-05}], "time": 3.779400003622868e-05, "attributes": {"intAttribute": 3145731, "doubleAttribute": 9877595.34, "elementIDAttribute": 30003145731, "stringAttribute": "id is 3145731"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2359299, "index": [8], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 2.091600003950589e-05}, {"id": 1, "time": 1.834099998632155e-05}, {"id": 2, "time": 2.6799000124810846e-05}], "time": 6.709200010845962e-05, "attributes": {"intAttribute": 2359299, "doubleAttribute": 7408198.86, "elementIDAttribute": 30002359299, "stringAttribute": "id is 2359299"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2097155, "index": [7], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.012488207999922452}, {"id": 1, "time": 0.012360307999870201}, {"id": 2, "time": 0.013644410999859247}], "time": 0.038495042999784346, "attributes": {"intAttribute": 2097155, "doubleAttribute": 6585066.7, "elementIDAttribute": 30002097155, "stringAttribute": "id is 2097155"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2883587, "index": [10], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1286000017207698e-05}, {"id": 1, "time": 1.1629999789875e-05}, {"id": 2, "time": 1.3261000049169525e-05}], "time": 3.8615999756075325e-05, "attributes": {"intAttribute": 2883587, "doubleAttribute": 9054463.18, "elementIDAttribute": 30002883587, "stringAttribute": "id is 2883587"}}, {"entity": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0002424509996217239}], "time": 0.0002424509996217239, "attributes": {"intAttribute": 1, "doubleAttribute": 3.14, "elementIDAttribute": 30000000001, "stringAttribute": "id is 1"}}, {"entity": {"collection_id": 7, "home": 0, "id": 3932163, "index": [14], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2557999980344903e-05}, {"id": 1, "time": 1.1537000091266236e-05}, {"id": 2, "time": 1.1603999837461743e-05}], "time": 4.0321999904335826e-05, "attributes": {"intAttribute": 3932163, "doubleAttribute": 12346991.82, "elementIDAttribute": 30003932163, "stringAttribute": "id is 3932163"}}, {"entity": {"collection_id": 7, "home": 0, "id": 524291, "index": [1], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.015233588999990388}, {"id": 1, "time": 0.016358154000045033}, {"id": 2, "time": 0.013997248999885414}], "time": 0.0455910099999528, "attributes": {"intAttribute": 524291, "doubleAttribute": 1646273.74, "elementIDAttribute": 30000524291, "stringAttribute": "id is 524291"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2621443, "index": [9], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1482999980216846e-05}, {"id": 1, "time": 1.1468000138847856e-05}, {"id": 2, "time": 1.3377999948716024e-05}], "time": 3.755900002033741e-05, "attributes": {"intAttribute": 2621443, "doubleAttribute": 8231331.0200000005, "elementIDAttribute": 30002621443, "stringAttribute": "id is 2621443"}}, {"entity": {"home": 0, "id": 4194316, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 0, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194316, "doubleAttribute": 13170152.24, "elementIDAttribute": 30004194316, "stringAttribute": "id is 4194316"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1835011, "index": [6], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.01344777300005262}, {"id": 1, "time": 0.012236521000204448}, {"id": 2, "time": 0.013443552000126147}], "time": 0.03912899900024058, "attributes": {"intAttribute": 1835011, "doubleAttribute": 5761934.54, "elementIDAttribute": 30001835011, "stringAttribute": "id is 1835011"}}, {"entity": {"collection_id": 7, "home": 0, "id": 4194307, "index": [15], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 2.0753999933731393e-05}, {"id": 1, "time": 1.0948999943138915e-05}, {"id": 2, "time": 1.0993000159942312e-05}], "time": 5.1785000096060685e-05, "attributes": {"intAttribute": 4194307, "doubleAttribute": 13170123.98, "elementIDAttribute": 30004194307, "stringAttribute": "id is 4194307"}}, {"entity": {"collection_id": 7, "home": 0, "id": 786435, "index": [2], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.015532984999936161}, {"id": 1, "time": 0.012524342999995497}, {"id": 2, "time": 0.014436995000096431}], "time": 0.04249566099997537, "attributes": {"intAttribute": 786435, "doubleAttribute": 2469405.9, "elementIDAttribute": 30000786435, "stringAttribute": "id is 786435"}}, {"entity": {"collection_id": 7, "home": 0, "id": 3670019, "index": [13], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2338000033196295e-05}, {"id": 1, "time": 1.1240000048928778e-05}, {"id": 2, "time": 1.1280000080660102e-05}], "time": 3.6966000152460765e-05, "attributes": {"intAttribute": 3670019, "doubleAttribute": 11523859.66, "elementIDAttribute": 30003670019, "stringAttribute": "id is 3670019"}}, {"entity": {"collection_id": 7, "home": 0, "id": 262147, "index": [0], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.015190218000043387}, {"id": 1, "time": 0.011908351999863953}, {"id": 2, "time": 0.012042187000133708}], "time": 0.03914204400007293, "attributes": {"intAttribute": 262147, "doubleAttribute": 823141.5800000001, "elementIDAttribute": 30000262147, "stringAttribute": "id is 262147"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1048579, "index": [3], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013884609000115233}, {"id": 1, "time": 0.0134593909999694}, {"id": 2, "time": 0.014711545999944065}], "time": 0.042057107000118776, "attributes": {"intAttribute": 1048579, "doubleAttribute": 3292538.06, "elementIDAttribute": 30001048579, "stringAttribute": "id is 1048579"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1310723, "index": [4], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.01371691400004238}, {"id": 1, "time": 0.012384576000158631}, {"id": 2, "time": 0.013048808999883477}], "time": 0.03915209199999481, "attributes": {"intAttribute": 1310723, "doubleAttribute": 4115670.22, "elementIDAttribute": 30001310723, "stringAttribute": "id is 1310723"}}, {"entity": {"home": 0, "id": 3145740, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 4.318000037528691e-06}], "time": 4.318000037528691e-06, "attributes": {"intAttribute": 3145740, "doubleAttribute": 9877623.6, "elementIDAttribute": 30003145740, "stringAttribute": "id is 3145740"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1572867, "index": [5], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.012946118999934697}, {"id": 1, "time": 0.012382524999793532}, {"id": 2, "time": 0.013929620999988401}], "time": 0.03925949899985426, "attributes": {"intAttribute": 1572867, "doubleAttribute": 4938802.38, "elementIDAttribute": 30001572867, "stringAttribute": "id is 1572867"}}]}, {"communications": [{"bytes": 1344.0, "from": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "messages": 24, "to": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "type": "SendRecv"}, {"bytes": 1344.0, "from": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "messages": 24, "to": {"home": 2, "id": 9, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 7, "tasks": [{"entity": {"collection_id": 7, "home": 0, "id": 3407875, "index": [12], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3324000065040309e-05}, {"id": 1, "time": 1.1277000112386304e-05}, {"id": 2, "time": 1.129100019170437e-05}], "time": 3.691400024763425e-05, "attributes": {"intAttribute": 3407875, "doubleAttribute": 10700727.5, "elementIDAttribute": 30003407875, "stringAttribute": "id is 3407875"}}, {"entity": {"collection_id": 7, "home": 0, "id": 3145731, "index": [11], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.464899992242863e-05}, {"id": 1, "time": 1.1790999906224897e-05}, {"id": 2, "time": 1.1406999874452595e-05}], "time": 3.908699977728247e-05, "attributes": {"intAttribute": 3145731, "doubleAttribute": 9877595.34, "elementIDAttribute": 30003145731, "stringAttribute": "id is 3145731"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2359299, "index": [8], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 3.3321000046271365e-05}, {"id": 1, "time": 1.4116000102148973e-05}, {"id": 2, "time": 1.2794999975085375e-05}], "time": 6.172300004436693e-05, "attributes": {"intAttribute": 2359299, "doubleAttribute": 7408198.86, "elementIDAttribute": 30002359299, "stringAttribute": "id is 2359299"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2097155, "index": [7], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013255122999908053}, {"id": 1, "time": 0.012840286999789896}, {"id": 2, "time": 0.011398968999856152}], "time": 0.03749663399958081, "attributes": {"intAttribute": 2097155, "doubleAttribute": 6585066.7, "elementIDAttribute": 30002097155, "stringAttribute": "id is 2097155"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2883587, "index": [10], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3600000102087506e-05}, {"id": 1, "time": 1.1389000064809807e-05}, {"id": 2, "time": 1.1510999911479303e-05}], "time": 3.843000013148412e-05, "attributes": {"intAttribute": 2883587, "doubleAttribute": 9054463.18, "elementIDAttribute": 30002883587, "stringAttribute": "id is 2883587"}}, {"entity": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.00018627699978424062}], "time": 0.00018627699978424062, "attributes": {"intAttribute": 1, "doubleAttribute": 3.14, "elementIDAttribute": 30000000001, "stringAttribute": "id is 1"}}, {"entity": {"collection_id": 7, "home": 0, "id": 3932163, "index": [14], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3474000070345937e-05}, {"id": 1, "time": 1.3726000133829075e-05}, {"id": 2, "time": 1.170100017588993e-05}], "time": 4.4140000454717665e-05, "attributes": {"intAttribute": 3932163, "doubleAttribute": 12346991.82, "elementIDAttribute": 30003932163, "stringAttribute": "id is 3932163"}}, {"entity": {"collection_id": 7, "home": 0, "id": 524291, "index": [1], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013114867000012964}, {"id": 1, "time": 0.012395729999980176}, {"id": 2, "time": 0.013107516999980362}], "time": 0.03862049899998965, "attributes": {"intAttribute": 524291, "doubleAttribute": 1646273.74, "elementIDAttribute": 30000524291, "stringAttribute": "id is 524291"}}, {"entity": {"collection_id": 7, "home": 0, "id": 2621443, "index": [9], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3657999943461618e-05}, {"id": 1, "time": 1.1482999980216846e-05}, {"id": 2, "time": 1.1505000202305382e-05}], "time": 3.7937000115562114e-05, "attributes": {"intAttribute": 2621443, "doubleAttribute": 8231331.0200000005, "elementIDAttribute": 30002621443, "stringAttribute": "id is 2621443"}}, {"entity": {"home": 0, "id": 4194316, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 0, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194316, "doubleAttribute": 13170152.24, "elementIDAttribute": 30004194316, "stringAttribute": "id is 4194316"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1835011, "index": [6], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013434443000051033}, {"id": 1, "time": 0.01262670000005528}, {"id": 2, "time": 0.011842742999988332}], "time": 0.0379052270000102, "attributes": {"intAttribute": 1835011, "doubleAttribute": 5761934.54, "elementIDAttribute": 30001835011, "stringAttribute": "id is 1835011"}}, {"entity": {"collection_id": 7, "home": 0, "id": 4194307, "index": [15], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 3.1560999786961474e-05}, {"id": 1, "time": 1.2905999938084278e-05}, {"id": 2, "time": 1.1088999826824875e-05}], "time": 6.585299956896051e-05, "attributes": {"intAttribute": 4194307, "doubleAttribute": 13170123.98, "elementIDAttribute": 30004194307, "stringAttribute": "id is 4194307"}}, {"entity": {"collection_id": 7, "home": 0, "id": 786435, "index": [2], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013180827000041972}, {"id": 1, "time": 0.012219563999906313}, {"id": 2, "time": 0.013475759999892034}], "time": 0.03887747899966598, "attributes": {"intAttribute": 786435, "doubleAttribute": 2469405.9, "elementIDAttribute": 30000786435, "stringAttribute": "id is 786435"}}, {"entity": {"collection_id": 7, "home": 0, "id": 3670019, "index": [13], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3127000102031161e-05}, {"id": 1, "time": 1.3029999990976648e-05}, {"id": 2, "time": 1.1163999943164526e-05}], "time": 4.000300009465718e-05, "attributes": {"intAttribute": 3670019, "doubleAttribute": 11523859.66, "elementIDAttribute": 30003670019, "stringAttribute": "id is 3670019"}}, {"entity": {"collection_id": 7, "home": 0, "id": 262147, "index": [0], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013104878999911307}, {"id": 1, "time": 0.012886859999980516}, {"id": 2, "time": 0.011723947000064072}], "time": 0.03771746699999312, "attributes": {"intAttribute": 262147, "doubleAttribute": 823141.5800000001, "elementIDAttribute": 30000262147, "stringAttribute": "id is 262147"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1048579, "index": [3], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013610874000050899}, {"id": 1, "time": 0.014637511000046288}, {"id": 2, "time": 0.012813103000098636}], "time": 0.04106314200021188, "attributes": {"intAttribute": 1048579, "doubleAttribute": 3292538.06, "elementIDAttribute": 30001048579, "stringAttribute": "id is 1048579"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1310723, "index": [4], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.014061995000020033}, {"id": 1, "time": 0.012454372000092917}, {"id": 2, "time": 0.01612738999983776}], "time": 0.042646233999903416, "attributes": {"intAttribute": 1310723, "doubleAttribute": 4115670.22, "elementIDAttribute": 30001310723, "stringAttribute": "id is 1310723"}}, {"entity": {"home": 0, "id": 3145740, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 4.481000132727786e-06}], "time": 4.481000132727786e-06, "attributes": {"intAttribute": 3145740, "doubleAttribute": 9877623.6, "elementIDAttribute": 30003145740, "stringAttribute": "id is 3145740"}}, {"entity": {"collection_id": 7, "home": 0, "id": 1572867, "index": [5], "migratable": true, "type": "object"}, "node": 0, "resource": "cpu", "subphases": [{"id": 0, "time": 0.013455210999836709}, {"id": 1, "time": 0.0116946299999654}, {"id": 2, "time": 0.01172174500015899}], "time": 0.03687369400017815, "attributes": {"intAttribute": 1572867, "doubleAttribute": 4938802.38, "elementIDAttribute": 30001572867, "stringAttribute": "id is 1572867"}}]}]} \ No newline at end of file diff --git a/tests/unit/synthetic_attributes/data.0.json.br b/tests/unit/synthetic_attributes/data.0.json.br new file mode 100644 index 0000000000..727acbd611 Binary files /dev/null and b/tests/unit/synthetic_attributes/data.0.json.br differ diff --git a/tests/unit/synthetic_attributes/data.1.json b/tests/unit/synthetic_attributes/data.1.json new file mode 100644 index 0000000000..ea99ac232d --- /dev/null +++ b/tests/unit/synthetic_attributes/data.1.json @@ -0,0 +1 @@ +{"metadata": {"rank": 1, "shared_node": {"id": 0, "num_nodes": 1, "rank": 1, "size": 4}, "type": "LBDatafile", "attributes": {"intAttribute": 1, "doubleAttribute": 3.14, "elementIDAttribute": 30000000001, "stringAttribute": "id is 1"}}, "phases": [{"communications": [{"bytes": 112.0, "from": {"home": 0, "id": 0, "migratable": false, "type": "object"}, "messages": 2, "to": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "type": "SendRecv"}, {"bytes": 112.0, "from": {"home": 0, "id": 0, "migratable": false, "type": "object"}, "messages": 2, "to": {"home": 3, "id": 13, "migratable": false, "type": "object"}, "type": "SendRecv"}, {"bytes": 2160.0, "from": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "messages": 29, "to": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "type": "SendRecv"}, {"bytes": 80.0, "from": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "messages": 1, "to": {"home": 3, "id": 13, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 0, "tasks": [{"entity": {"collection_id": 7, "home": 1, "id": 3407879, "index": [28], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3908000028095557e-05}, {"id": 1, "time": 1.119100011237606e-05}, {"id": 2, "time": 1.1192000101800659e-05}], "time": 3.6291000242272275e-05, "attributes": {"intAttribute": 3407879, "doubleAttribute": 10700740.06, "elementIDAttribute": 30003407879, "stringAttribute": "id is 3407879"}}, {"entity": {"collection_id": 7, "home": 1, "id": 3145735, "index": [27], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2140999842813471e-05}, {"id": 1, "time": 1.117399983741052e-05}, {"id": 2, "time": 1.1206999943169649e-05}], "time": 3.452199962339364e-05, "attributes": {"intAttribute": 3145735, "doubleAttribute": 9877607.9, "elementIDAttribute": 30003145735, "stringAttribute": "id is 3145735"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2621447, "index": [25], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2143000049036345e-05}, {"id": 1, "time": 1.1200000017197453e-05}, {"id": 2, "time": 1.1186999927303987e-05}], "time": 3.4529999993537785e-05, "attributes": {"intAttribute": 2621447, "doubleAttribute": 8231343.58, "elementIDAttribute": 30002621447, "stringAttribute": "id is 2621447"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2359303, "index": [24], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2232000017320388e-05}, {"id": 1, "time": 1.1138999980175868e-05}, {"id": 2, "time": 1.1217000064789318e-05}], "time": 3.458800006228557e-05, "attributes": {"intAttribute": 2359303, "doubleAttribute": 7408211.42, "elementIDAttribute": 30002359303, "stringAttribute": "id is 2359303"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2097159, "index": [23], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2218999927426921e-05}, {"id": 1, "time": 1.1146000133521738e-05}, {"id": 2, "time": 1.1171000096510397e-05}], "time": 3.453600015745906e-05, "attributes": {"intAttribute": 2097159, "doubleAttribute": 6585079.260000001, "elementIDAttribute": 30002097159, "stringAttribute": "id is 2097159"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2883591, "index": [26], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2210000022605527e-05}, {"id": 1, "time": 1.111200003833801e-05}, {"id": 2, "time": 1.1177000033057993e-05}], "time": 3.449900009400153e-05, "attributes": {"intAttribute": 2883591, "doubleAttribute": 9054475.74, "elementIDAttribute": 30002883591, "stringAttribute": "id is 2883591"}}, {"entity": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0001703699995232455}], "time": 0.0001703699995232455, "attributes": {"intAttribute": 5, "doubleAttribute": 15.700000000000001, "elementIDAttribute": 30000000005, "stringAttribute": "id is 5"}}, {"entity": {"collection_id": 7, "home": 1, "id": 3932167, "index": [30], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3224999975136598e-05}, {"id": 1, "time": 1.2065000191796571e-05}, {"id": 2, "time": 1.2137999874539673e-05}], "time": 3.742800004147284e-05, "attributes": {"intAttribute": 3932167, "doubleAttribute": 12347004.38, "elementIDAttribute": 30003932167, "stringAttribute": "id is 3932167"}}, {"entity": {"collection_id": 7, "home": 1, "id": 524295, "index": [17], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2166000033175806e-05}, {"id": 1, "time": 1.1151999842695659e-05}, {"id": 2, "time": 1.1169000117661199e-05}], "time": 3.448699999353266e-05, "attributes": {"intAttribute": 524295, "doubleAttribute": 1646286.3, "elementIDAttribute": 30000524295, "stringAttribute": "id is 524295"}}, {"entity": {"home": 1, "id": 4194332, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 1, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194332, "doubleAttribute": 13170202.48, "elementIDAttribute": 30004194332, "stringAttribute": "id is 4194332"}}, {"entity": {"home": 1, "id": 3145756, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 1, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 3145756, "doubleAttribute": 9877673.84, "elementIDAttribute": 30003145756, "stringAttribute": "id is 3145756"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1048583, "index": [19], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2178999895695597e-05}, {"id": 1, "time": 1.1130000075354474e-05}, {"id": 2, "time": 1.113500002247747e-05}], "time": 3.444399999352754e-05, "attributes": {"intAttribute": 1048583, "doubleAttribute": 3292550.62, "elementIDAttribute": 30001048583, "stringAttribute": "id is 1048583"}}, {"entity": {"collection_id": 7, "home": 1, "id": 4194311, "index": [31], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 2.2382999986803043e-05}, {"id": 1, "time": 2.503099995010416e-05}, {"id": 2, "time": 2.542900006119453e-05}], "time": 7.284299999810173e-05, "attributes": {"intAttribute": 4194311, "doubleAttribute": 13170136.540000001, "elementIDAttribute": 30004194311, "stringAttribute": "id is 4194311"}}, {"entity": {"collection_id": 7, "home": 1, "id": 786439, "index": [18], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2221000133649795e-05}, {"id": 1, "time": 1.1175000054208795e-05}, {"id": 2, "time": 1.125099993259937e-05}], "time": 3.464700012045796e-05, "attributes": {"intAttribute": 786439, "doubleAttribute": 2469418.46, "elementIDAttribute": 30000786439, "stringAttribute": "id is 786439"}}, {"entity": {"collection_id": 7, "home": 1, "id": 3670023, "index": [29], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.5326000038839993e-05}, {"id": 1, "time": 1.1238999832130503e-05}, {"id": 2, "time": 1.1536000101841637e-05}], "time": 3.810099997281213e-05, "attributes": {"intAttribute": 3670023, "doubleAttribute": 11523872.22, "elementIDAttribute": 30003670023, "stringAttribute": "id is 3670023"}}, {"entity": {"collection_id": 7, "home": 1, "id": 262151, "index": [16], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2261999927432043e-05}, {"id": 1, "time": 1.1293000170553569e-05}, {"id": 2, "time": 1.1313999948470155e-05}], "time": 3.486900004645577e-05, "attributes": {"intAttribute": 262151, "doubleAttribute": 823154.14, "elementIDAttribute": 30000262151, "stringAttribute": "id is 262151"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1310727, "index": [20], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.219799992213666e-05}, {"id": 1, "time": 1.1118999964310206e-05}, {"id": 2, "time": 1.1212999879717245e-05}], "time": 3.452999976616411e-05, "attributes": {"intAttribute": 1310727, "doubleAttribute": 4115682.7800000003, "elementIDAttribute": 30001310727, "stringAttribute": "id is 1310727"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1572871, "index": [21], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.218200009134307e-05}, {"id": 1, "time": 1.1094000001321547e-05}, {"id": 2, "time": 1.1186000165253063e-05}], "time": 3.446200025791768e-05, "attributes": {"intAttribute": 1572871, "doubleAttribute": 4938814.94, "elementIDAttribute": 30001572871, "stringAttribute": "id is 1572871"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1835015, "index": [22], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2210000022605527e-05}, {"id": 1, "time": 1.11279998691316e-05}, {"id": 2, "time": 1.1133999805679196e-05}], "time": 3.447199969741632e-05, "attributes": {"intAttribute": 1835015, "doubleAttribute": 5761947.100000001, "elementIDAttribute": 30001835015, "stringAttribute": "id is 1835015"}}]}, {"communications": [{"bytes": 2416.0, "from": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "messages": 34, "to": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 1, "tasks": [{"entity": {"collection_id": 7, "home": 1, "id": 3407879, "index": [28], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2828000080844504e-05}, {"id": 1, "time": 3.278099984527216e-05}, {"id": 2, "time": 1.1143999927298864e-05}], "time": 5.791999979010143e-05, "attributes": {"intAttribute": 3407879, "doubleAttribute": 10700740.06, "elementIDAttribute": 30003407879, "stringAttribute": "id is 3407879"}}, {"entity": {"collection_id": 7, "home": 1, "id": 3145735, "index": [27], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2953999885212397e-05}, {"id": 1, "time": 1.4993000149843283e-05}, {"id": 2, "time": 1.1275000133537105e-05}], "time": 4.056800025864504e-05, "attributes": {"intAttribute": 3145735, "doubleAttribute": 9877607.9, "elementIDAttribute": 30003145735, "stringAttribute": "id is 3145735"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2621447, "index": [25], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2851999827034888e-05}, {"id": 1, "time": 1.324499999100226e-05}, {"id": 2, "time": 1.1176000043633394e-05}], "time": 3.836899986708886e-05, "attributes": {"intAttribute": 2621447, "doubleAttribute": 8231343.58, "elementIDAttribute": 30002621447, "stringAttribute": "id is 2621447"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2359303, "index": [24], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2562000165416976e-05}, {"id": 1, "time": 1.293600007556961e-05}, {"id": 2, "time": 1.1147999884997262e-05}], "time": 3.798600027948851e-05, "attributes": {"intAttribute": 2359303, "doubleAttribute": 7408211.42, "elementIDAttribute": 30002359303, "stringAttribute": "id is 2359303"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2097159, "index": [23], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.234399996974389e-05}, {"id": 1, "time": 1.3413000033324352e-05}, {"id": 2, "time": 1.1251000159973046e-05}], "time": 3.908100006810855e-05, "attributes": {"intAttribute": 2097159, "doubleAttribute": 6585079.260000001, "elementIDAttribute": 30002097159, "stringAttribute": "id is 2097159"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2883591, "index": [26], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2721000075543998e-05}, {"id": 1, "time": 1.3515999853552785e-05}, {"id": 2, "time": 1.1123999911433202e-05}], "time": 4.134499977226369e-05, "attributes": {"intAttribute": 2883591, "doubleAttribute": 9054475.74, "elementIDAttribute": 30002883591, "stringAttribute": "id is 2883591"}}, {"entity": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 0.00031635200093660387}], "time": 0.00031635200093660387, "attributes": {"intAttribute": 5, "doubleAttribute": 15.700000000000001, "elementIDAttribute": 30000000005, "stringAttribute": "id is 5"}}, {"entity": {"collection_id": 7, "home": 1, "id": 3932167, "index": [30], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.542099994367163e-05}, {"id": 1, "time": 1.4473999954134342e-05}, {"id": 2, "time": 1.2255000001459848e-05}], "time": 4.9475999958303873e-05, "attributes": {"intAttribute": 3932167, "doubleAttribute": 12347004.38, "elementIDAttribute": 30003932167, "stringAttribute": "id is 3932167"}}, {"entity": {"collection_id": 7, "home": 1, "id": 524295, "index": [17], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.270999996449973e-05}, {"id": 1, "time": 1.3140999953975552e-05}, {"id": 2, "time": 1.1246999974900973e-05}], "time": 3.874000003634137e-05, "attributes": {"intAttribute": 524295, "doubleAttribute": 1646286.3, "elementIDAttribute": 30000524295, "stringAttribute": "id is 524295"}}, {"entity": {"home": 1, "id": 4194332, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 1, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194332, "doubleAttribute": 13170202.48, "elementIDAttribute": 30004194332, "stringAttribute": "id is 4194332"}}, {"entity": {"home": 1, "id": 3145756, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.0578999990684679e-05}], "time": 1.0578999990684679e-05, "attributes": {"intAttribute": 3145756, "doubleAttribute": 9877673.84, "elementIDAttribute": 30003145756, "stringAttribute": "id is 3145756"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1048583, "index": [19], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.4163999821903417e-05}, {"id": 1, "time": 1.315200006501982e-05}, {"id": 2, "time": 1.1255999879722367e-05}], "time": 3.9979999883144046e-05, "attributes": {"intAttribute": 1048583, "doubleAttribute": 3292550.62, "elementIDAttribute": 30001048583, "stringAttribute": "id is 1048583"}}, {"entity": {"collection_id": 7, "home": 1, "id": 4194311, "index": [31], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 3.8506999999299296e-05}, {"id": 1, "time": 3.3755999993445585e-05}, {"id": 2, "time": 2.569200000834826e-05}], "time": 0.0001132469999447494, "attributes": {"intAttribute": 4194311, "doubleAttribute": 13170136.540000001, "elementIDAttribute": 30004194311, "stringAttribute": "id is 4194311"}}, {"entity": {"collection_id": 7, "home": 1, "id": 786439, "index": [18], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.288900011786609e-05}, {"id": 1, "time": 1.3071000012132572e-05}, {"id": 2, "time": 1.1217000064789318e-05}], "time": 4.039200007355248e-05, "attributes": {"intAttribute": 786439, "doubleAttribute": 2469418.46, "elementIDAttribute": 30000786439, "stringAttribute": "id is 786439"}}, {"entity": {"collection_id": 7, "home": 1, "id": 3670023, "index": [29], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3255999874672852e-05}, {"id": 1, "time": 1.3031999969825847e-05}, {"id": 2, "time": 1.1200000017197453e-05}], "time": 3.916999980901892e-05, "attributes": {"intAttribute": 3670023, "doubleAttribute": 11523872.22, "elementIDAttribute": 30003670023, "stringAttribute": "id is 3670023"}}, {"entity": {"collection_id": 7, "home": 1, "id": 262151, "index": [16], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2844000139011769e-05}, {"id": 1, "time": 1.336800005447003e-05}, {"id": 2, "time": 1.1354999969626078e-05}], "time": 3.918600009455986e-05, "attributes": {"intAttribute": 262151, "doubleAttribute": 823154.14, "elementIDAttribute": 30000262151, "stringAttribute": "id is 262151"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1310727, "index": [20], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.243200017597701e-05}, {"id": 1, "time": 1.3019000107306056e-05}, {"id": 2, "time": 1.1180000001331791e-05}], "time": 3.794700023718178e-05, "attributes": {"intAttribute": 1310727, "doubleAttribute": 4115682.7800000003, "elementIDAttribute": 30001310727, "stringAttribute": "id is 1310727"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1572871, "index": [21], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2274999789951835e-05}, {"id": 1, "time": 1.2968999953955063e-05}, {"id": 2, "time": 1.1064000091209891e-05}], "time": 3.7505999898712616e-05, "attributes": {"intAttribute": 1572871, "doubleAttribute": 4938814.94, "elementIDAttribute": 30001572871, "stringAttribute": "id is 1572871"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1835015, "index": [22], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2313000070207636e-05}, {"id": 1, "time": 1.3058999911663705e-05}, {"id": 2, "time": 1.1108999842690537e-05}], "time": 3.936599978260347e-05, "attributes": {"intAttribute": 1835015, "doubleAttribute": 5761947.100000001, "elementIDAttribute": 30001835015, "stringAttribute": "id is 1835015"}}]}, {"communications": [{"bytes": 2352.0, "from": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "messages": 33, "to": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 2, "tasks": [{"entity": {"collection_id": 7, "home": 1, "id": 3407879, "index": [28], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.232299996445363e-05}, {"id": 1, "time": 1.2737000133711263e-05}, {"id": 2, "time": 1.1144999916723464e-05}], "time": 3.740500005733338e-05, "attributes": {"intAttribute": 3407879, "doubleAttribute": 10700740.06, "elementIDAttribute": 30003407879, "stringAttribute": "id is 3407879"}}, {"entity": {"collection_id": 7, "home": 1, "id": 3145735, "index": [27], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2319000006755232e-05}, {"id": 1, "time": 1.2601999969774624e-05}, {"id": 2, "time": 1.1159999985466129e-05}], "time": 3.749899997274042e-05, "attributes": {"intAttribute": 3145735, "doubleAttribute": 9877607.9, "elementIDAttribute": 30003145735, "stringAttribute": "id is 3145735"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2621447, "index": [25], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2365999964458751e-05}, {"id": 1, "time": 1.264700017600262e-05}, {"id": 2, "time": 1.1070000027757487e-05}], "time": 3.76070001948392e-05, "attributes": {"intAttribute": 2621447, "doubleAttribute": 8231343.58, "elementIDAttribute": 30002621447, "stringAttribute": "id is 2621447"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2359303, "index": [24], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2429999969754135e-05}, {"id": 1, "time": 1.2717999879896524e-05}, {"id": 2, "time": 1.1225999969610712e-05}], "time": 3.8041999914639746e-05, "attributes": {"intAttribute": 2359303, "doubleAttribute": 7408211.42, "elementIDAttribute": 30002359303, "stringAttribute": "id is 2359303"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2097159, "index": [23], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2432999938027933e-05}, {"id": 1, "time": 1.2921999996251543e-05}, {"id": 2, "time": 1.1270999948465033e-05}], "time": 3.870699970320857e-05, "attributes": {"intAttribute": 2097159, "doubleAttribute": 6585079.260000001, "elementIDAttribute": 30002097159, "stringAttribute": "id is 2097159"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2883591, "index": [26], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2388000186547288e-05}, {"id": 1, "time": 1.2823999895772431e-05}, {"id": 2, "time": 1.1254000128246844e-05}], "time": 3.7968000242472044e-05, "attributes": {"intAttribute": 2883591, "doubleAttribute": 9054475.74, "elementIDAttribute": 30002883591, "stringAttribute": "id is 2883591"}}, {"entity": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 0.00018056699991575442}], "time": 0.00018056699991575442, "attributes": {"intAttribute": 5, "doubleAttribute": 15.700000000000001, "elementIDAttribute": 30000000005, "stringAttribute": "id is 5"}}, {"entity": {"collection_id": 7, "home": 1, "id": 3932167, "index": [30], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.295800007028447e-05}, {"id": 1, "time": 1.433900001757138e-05}, {"id": 2, "time": 1.201300005959638e-05}], "time": 4.325100007918081e-05, "attributes": {"intAttribute": 3932167, "doubleAttribute": 12347004.38, "elementIDAttribute": 30003932167, "stringAttribute": "id is 3932167"}}, {"entity": {"collection_id": 7, "home": 1, "id": 524295, "index": [17], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2451999964468996e-05}, {"id": 1, "time": 1.302700002270285e-05}, {"id": 2, "time": 1.131500016526843e-05}], "time": 3.8689000120939454e-05, "attributes": {"intAttribute": 524295, "doubleAttribute": 1646286.3, "elementIDAttribute": 30000524295, "stringAttribute": "id is 524295"}}, {"entity": {"home": 1, "id": 4194332, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 1, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194332, "doubleAttribute": 13170202.48, "elementIDAttribute": 30004194332, "stringAttribute": "id is 4194332"}}, {"entity": {"home": 1, "id": 3145756, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 2.9180000638007186e-06}], "time": 2.9180000638007186e-06, "attributes": {"intAttribute": 3145756, "doubleAttribute": 9877673.84, "elementIDAttribute": 30003145756, "stringAttribute": "id is 3145756"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1048583, "index": [19], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2349000144240563e-05}, {"id": 1, "time": 1.2649999916902743e-05}, {"id": 2, "time": 1.1125000128231477e-05}], "time": 3.82710002213571e-05, "attributes": {"intAttribute": 1048583, "doubleAttribute": 3292550.62, "elementIDAttribute": 30001048583, "stringAttribute": "id is 1048583"}}, {"entity": {"collection_id": 7, "home": 1, "id": 4194311, "index": [31], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 5.330899989530735e-05}, {"id": 1, "time": 3.403400000934198e-05}, {"id": 2, "time": 2.3110000029191724e-05}], "time": 0.00011986300000899064, "attributes": {"intAttribute": 4194311, "doubleAttribute": 13170136.540000001, "elementIDAttribute": 30004194311, "stringAttribute": "id is 4194311"}}, {"entity": {"collection_id": 7, "home": 1, "id": 786439, "index": [18], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2409999953888473e-05}, {"id": 1, "time": 1.2869000102000427e-05}, {"id": 2, "time": 1.1323999842716148e-05}], "time": 3.762699975595751e-05, "attributes": {"intAttribute": 786439, "doubleAttribute": 2469418.46, "elementIDAttribute": 30000786439, "stringAttribute": "id is 786439"}}, {"entity": {"collection_id": 7, "home": 1, "id": 3670023, "index": [29], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2392999906296609e-05}, {"id": 1, "time": 1.2883999943369417e-05}, {"id": 2, "time": 1.1358999927324476e-05}], "time": 3.982899988841382e-05, "attributes": {"intAttribute": 3670023, "doubleAttribute": 11523872.22, "elementIDAttribute": 30003670023, "stringAttribute": "id is 3670023"}}, {"entity": {"collection_id": 7, "home": 1, "id": 262151, "index": [16], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2483000091378926e-05}, {"id": 1, "time": 1.2991999938094523e-05}, {"id": 2, "time": 1.1419999964346061e-05}], "time": 3.953600003114843e-05, "attributes": {"intAttribute": 262151, "doubleAttribute": 823154.14, "elementIDAttribute": 30000262151, "stringAttribute": "id is 262151"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1310727, "index": [20], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.232299996445363e-05}, {"id": 1, "time": 1.3103000128467102e-05}, {"id": 2, "time": 1.1411000059524667e-05}], "time": 4.866400013270322e-05, "attributes": {"intAttribute": 1310727, "doubleAttribute": 4115682.7800000003, "elementIDAttribute": 30001310727, "stringAttribute": "id is 1310727"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1572871, "index": [21], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2335000064922497e-05}, {"id": 1, "time": 1.2771000001521315e-05}, {"id": 2, "time": 1.1167999900862924e-05}], "time": 3.771599995161523e-05, "attributes": {"intAttribute": 1572871, "doubleAttribute": 4938814.94, "elementIDAttribute": 30001572871, "stringAttribute": "id is 1572871"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1835015, "index": [22], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2305999916861765e-05}, {"id": 1, "time": 1.270999996449973e-05}, {"id": 2, "time": 1.1159999985466129e-05}], "time": 3.753600003619795e-05, "attributes": {"intAttribute": 1835015, "doubleAttribute": 5761947.100000001, "elementIDAttribute": 30001835015, "stringAttribute": "id is 1835015"}}]}, {"communications": [{"bytes": 2288.0, "from": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "messages": 32, "to": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 3, "tasks": [{"entity": {"collection_id": 7, "home": 1, "id": 3407879, "index": [28], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.195699996969779e-05}, {"id": 1, "time": 1.1247999964325572e-05}, {"id": 2, "time": 1.1151999842695659e-05}], "time": 3.552099974513112e-05, "attributes": {"intAttribute": 3407879, "doubleAttribute": 10700740.06, "elementIDAttribute": 30003407879, "stringAttribute": "id is 3407879"}}, {"entity": {"collection_id": 7, "home": 1, "id": 3145735, "index": [27], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.212799998029368e-05}, {"id": 1, "time": 1.1666000091281603e-05}, {"id": 2, "time": 1.1238000070079579e-05}], "time": 3.6443999988478026e-05, "attributes": {"intAttribute": 3145735, "doubleAttribute": 9877607.9, "elementIDAttribute": 30003145735, "stringAttribute": "id is 3145735"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2621447, "index": [25], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.195699996969779e-05}, {"id": 1, "time": 2.8991000135647482e-05}, {"id": 2, "time": 1.1119999953734805e-05}], "time": 5.3498999932344304e-05, "attributes": {"intAttribute": 2621447, "doubleAttribute": 8231343.58, "elementIDAttribute": 30002621447, "stringAttribute": "id is 2621447"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2359303, "index": [24], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2060000017299899e-05}, {"id": 1, "time": 3.167799991388165e-05}, {"id": 2, "time": 1.1309999990771757e-05}], "time": 5.642199994326802e-05, "attributes": {"intAttribute": 2359303, "doubleAttribute": 7408211.42, "elementIDAttribute": 30002359303, "stringAttribute": "id is 2359303"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2097159, "index": [23], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1992000054306118e-05}, {"id": 1, "time": 1.2602999959199224e-05}, {"id": 2, "time": 1.1138999980175868e-05}], "time": 3.759900005206873e-05, "attributes": {"intAttribute": 2097159, "doubleAttribute": 6585079.260000001, "elementIDAttribute": 30002097159, "stringAttribute": "id is 2097159"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2883591, "index": [26], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2126000001444481e-05}, {"id": 1, "time": 1.1486999937915243e-05}, {"id": 2, "time": 1.1258000085945241e-05}], "time": 6.0206000171092455e-05, "attributes": {"intAttribute": 2883591, "doubleAttribute": 9054475.74, "elementIDAttribute": 30002883591, "stringAttribute": "id is 2883591"}}, {"entity": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 0.00026173700030085456}], "time": 0.00026173700030085456, "attributes": {"intAttribute": 5, "doubleAttribute": 15.700000000000001, "elementIDAttribute": 30000000005, "stringAttribute": "id is 5"}}, {"entity": {"collection_id": 7, "home": 1, "id": 3932167, "index": [30], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2467000033211662e-05}, {"id": 1, "time": 3.0520999871441745e-05}, {"id": 2, "time": 1.2125000012019882e-05}], "time": 5.894700007047504e-05, "attributes": {"intAttribute": 3932167, "doubleAttribute": 12347004.38, "elementIDAttribute": 30003932167, "stringAttribute": "id is 3932167"}}, {"entity": {"collection_id": 7, "home": 1, "id": 524295, "index": [17], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 4.545599995253724e-05}, {"id": 1, "time": 9.038899997904082e-05}, {"id": 2, "time": 1.1258000085945241e-05}], "time": 0.00014933700003894046, "attributes": {"intAttribute": 524295, "doubleAttribute": 1646286.3, "elementIDAttribute": 30000524295, "stringAttribute": "id is 524295"}}, {"entity": {"home": 1, "id": 4194332, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 1, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194332, "doubleAttribute": 13170202.48, "elementIDAttribute": 30004194332, "stringAttribute": "id is 4194332"}}, {"entity": {"home": 1, "id": 3145756, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 2.8220001695444807e-06}], "time": 2.8220001695444807e-06, "attributes": {"intAttribute": 3145756, "doubleAttribute": 9877673.84, "elementIDAttribute": 30003145756, "stringAttribute": "id is 3145756"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1048583, "index": [19], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 5.749900014961895e-05}, {"id": 1, "time": 3.592600000956736e-05}, {"id": 2, "time": 1.1363000112396549e-05}], "time": 0.00010617400039336644, "attributes": {"intAttribute": 1048583, "doubleAttribute": 3292550.62, "elementIDAttribute": 30001048583, "stringAttribute": "id is 1048583"}}, {"entity": {"collection_id": 7, "home": 1, "id": 4194311, "index": [31], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 2.4247000055765966e-05}, {"id": 1, "time": 5.397800009632192e-05}, {"id": 2, "time": 2.7489000103742e-05}], "time": 0.0001139630001034675, "attributes": {"intAttribute": 4194311, "doubleAttribute": 13170136.540000001, "elementIDAttribute": 30004194311, "stringAttribute": "id is 4194311"}}, {"entity": {"collection_id": 7, "home": 1, "id": 786439, "index": [18], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 3.3802999951149104e-05}, {"id": 1, "time": 5.863000001227192e-05}, {"id": 2, "time": 1.1229999927309109e-05}], "time": 0.0001054609997481748, "attributes": {"intAttribute": 786439, "doubleAttribute": 2469418.46, "elementIDAttribute": 30000786439, "stringAttribute": "id is 786439"}}, {"entity": {"collection_id": 7, "home": 1, "id": 3670023, "index": [29], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2043999959132634e-05}, {"id": 1, "time": 1.1562000054254895e-05}, {"id": 2, "time": 1.1554999900909024e-05}], "time": 5.4341999884854886e-05, "attributes": {"intAttribute": 3670023, "doubleAttribute": 11523872.22, "elementIDAttribute": 30003670023, "stringAttribute": "id is 3670023"}}, {"entity": {"collection_id": 7, "home": 1, "id": 262151, "index": [16], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2387999959173612e-05}, {"id": 1, "time": 1.1459999996077386e-05}, {"id": 2, "time": 1.1438999990787124e-05}], "time": 3.722799988281622e-05, "attributes": {"intAttribute": 262151, "doubleAttribute": 823154.14, "elementIDAttribute": 30000262151, "stringAttribute": "id is 262151"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1310727, "index": [20], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.357799987999897e-05}, {"id": 1, "time": 3.096699992966023e-05}, {"id": 2, "time": 1.1155000038343132e-05}], "time": 5.708499975298764e-05, "attributes": {"intAttribute": 1310727, "doubleAttribute": 4115682.7800000003, "elementIDAttribute": 30001310727, "stringAttribute": "id is 1310727"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1572871, "index": [21], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2234999985594186e-05}, {"id": 1, "time": 3.951200005758437e-05}, {"id": 2, "time": 1.1168999890287523e-05}], "time": 8.616500008429284e-05, "attributes": {"intAttribute": 1572871, "doubleAttribute": 4938814.94, "elementIDAttribute": 30001572871, "stringAttribute": "id is 1572871"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1835015, "index": [22], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.203500005431124e-05}, {"id": 1, "time": 1.2534999996205443e-05}, {"id": 2, "time": 1.1137000001326669e-05}], "time": 3.7004999967393815e-05, "attributes": {"intAttribute": 1835015, "doubleAttribute": 5761947.100000001, "elementIDAttribute": 30001835015, "stringAttribute": "id is 1835015"}}]}, {"communications": [{"bytes": 2224.0, "from": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "messages": 31, "to": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 4, "tasks": [{"entity": {"collection_id": 7, "home": 1, "id": 3407879, "index": [28], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 3.2159000056708464e-05}, {"id": 1, "time": 1.3143000160198426e-05}, {"id": 2, "time": 1.1271000175838708e-05}], "time": 5.7647000403449056e-05, "attributes": {"intAttribute": 3407879, "doubleAttribute": 10700740.06, "elementIDAttribute": 30003407879, "stringAttribute": "id is 3407879"}}, {"entity": {"collection_id": 7, "home": 1, "id": 3145735, "index": [27], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2632000107259955e-05}, {"id": 1, "time": 1.3293999927554978e-05}, {"id": 2, "time": 1.1248999953750172e-05}], "time": 3.868999988299038e-05, "attributes": {"intAttribute": 3145735, "doubleAttribute": 9877607.9, "elementIDAttribute": 30003145735, "stringAttribute": "id is 3145735"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2621447, "index": [25], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2807000075554242e-05}, {"id": 1, "time": 1.3359000149648637e-05}, {"id": 2, "time": 1.1142999937874265e-05}], "time": 3.839999999399879e-05, "attributes": {"intAttribute": 2621447, "doubleAttribute": 8231343.58, "elementIDAttribute": 30002621447, "stringAttribute": "id is 2621447"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2359303, "index": [24], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3160999969841214e-05}, {"id": 1, "time": 1.3241000033303862e-05}, {"id": 2, "time": 1.1254000128246844e-05}], "time": 3.899600028489658e-05, "attributes": {"intAttribute": 2359303, "doubleAttribute": 7408211.42, "elementIDAttribute": 30002359303, "stringAttribute": "id is 2359303"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2097159, "index": [23], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2878000006821821e-05}, {"id": 1, "time": 1.343099984296714e-05}, {"id": 2, "time": 1.1463999953775783e-05}], "time": 3.9757999729772564e-05, "attributes": {"intAttribute": 2097159, "doubleAttribute": 6585079.260000001, "elementIDAttribute": 30002097159, "stringAttribute": "id is 2097159"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2883591, "index": [26], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.273399993806379e-05}, {"id": 1, "time": 1.3017999890507781e-05}, {"id": 2, "time": 1.118299996960559e-05}], "time": 3.8724999967598706e-05, "attributes": {"intAttribute": 2883591, "doubleAttribute": 9054475.74, "elementIDAttribute": 30002883591, "stringAttribute": "id is 2883591"}}, {"entity": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 0.00022947999968891963}], "time": 0.00022947999968891963, "attributes": {"intAttribute": 5, "doubleAttribute": 15.700000000000001, "elementIDAttribute": 30000000005, "stringAttribute": "id is 5"}}, {"entity": {"collection_id": 7, "home": 1, "id": 3932167, "index": [30], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3242000022728462e-05}, {"id": 1, "time": 1.553500010231801e-05}, {"id": 2, "time": 1.2102000027880422e-05}], "time": 4.4661000174528453e-05, "attributes": {"intAttribute": 3932167, "doubleAttribute": 12347004.38, "elementIDAttribute": 30003932167, "stringAttribute": "id is 3932167"}}, {"entity": {"collection_id": 7, "home": 1, "id": 524295, "index": [17], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.267200013899128e-05}, {"id": 1, "time": 1.3504000207831268e-05}, {"id": 2, "time": 1.1436000022513326e-05}], "time": 3.93140003325243e-05, "attributes": {"intAttribute": 524295, "doubleAttribute": 1646286.3, "elementIDAttribute": 30000524295, "stringAttribute": "id is 524295"}}, {"entity": {"home": 1, "id": 4194332, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 1, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194332, "doubleAttribute": 13170202.48, "elementIDAttribute": 30004194332, "stringAttribute": "id is 4194332"}}, {"entity": {"home": 1, "id": 3145756, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 3.4390000109851826e-06}], "time": 3.4390000109851826e-06, "attributes": {"intAttribute": 3145756, "doubleAttribute": 9877673.84, "elementIDAttribute": 30003145756, "stringAttribute": "id is 3145756"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1048583, "index": [19], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 3.2421000014437595e-05}, {"id": 1, "time": 1.3329000012163306e-05}, {"id": 2, "time": 1.1299000107101165e-05}], "time": 5.9060000012323144e-05, "attributes": {"intAttribute": 1048583, "doubleAttribute": 3292550.62, "elementIDAttribute": 30001048583, "stringAttribute": "id is 1048583"}}, {"entity": {"collection_id": 7, "home": 1, "id": 4194311, "index": [31], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 3.157999981340254e-05}, {"id": 1, "time": 4.5736999936707434e-05}, {"id": 2, "time": 2.392300007159065e-05}], "time": 0.00010972299992317858, "attributes": {"intAttribute": 4194311, "doubleAttribute": 13170136.540000001, "elementIDAttribute": 30004194311, "stringAttribute": "id is 4194311"}}, {"entity": {"collection_id": 7, "home": 1, "id": 786439, "index": [18], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2618000027941889e-05}, {"id": 1, "time": 1.3445999911709805e-05}, {"id": 2, "time": 1.1266000001342036e-05}], "time": 3.841900002043985e-05, "attributes": {"intAttribute": 786439, "doubleAttribute": 2469418.46, "elementIDAttribute": 30000786439, "stringAttribute": "id is 786439"}}, {"entity": {"collection_id": 7, "home": 1, "id": 3670023, "index": [29], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2720000086119398e-05}, {"id": 1, "time": 1.3579000096797245e-05}, {"id": 2, "time": 1.1225999969610712e-05}], "time": 4.0135000062946347e-05, "attributes": {"intAttribute": 3670023, "doubleAttribute": 11523872.22, "elementIDAttribute": 30003670023, "stringAttribute": "id is 3670023"}}, {"entity": {"collection_id": 7, "home": 1, "id": 262151, "index": [16], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2715999901047326e-05}, {"id": 1, "time": 1.332899978478963e-05}, {"id": 2, "time": 1.1428999869167455e-05}], "time": 3.991499966105039e-05, "attributes": {"intAttribute": 262151, "doubleAttribute": 823154.14, "elementIDAttribute": 30000262151, "stringAttribute": "id is 262151"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1310727, "index": [20], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 3.781499981414527e-05}, {"id": 1, "time": 1.3338999906409299e-05}, {"id": 2, "time": 1.1368999821570469e-05}], "time": 6.40859996110521e-05, "attributes": {"intAttribute": 1310727, "doubleAttribute": 4115682.7800000003, "elementIDAttribute": 30001310727, "stringAttribute": "id is 1310727"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1572871, "index": [21], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2907000154882553e-05}, {"id": 1, "time": 1.3160999969841214e-05}, {"id": 2, "time": 1.1179000011907192e-05}], "time": 3.8379000216082204e-05, "attributes": {"intAttribute": 1572871, "doubleAttribute": 4938814.94, "elementIDAttribute": 30001572871, "stringAttribute": "id is 1572871"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1835015, "index": [22], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2737999895762186e-05}, {"id": 1, "time": 1.3185000170778949e-05}, {"id": 2, "time": 1.1153000059493934e-05}], "time": 3.830900004686555e-05, "attributes": {"intAttribute": 1835015, "doubleAttribute": 5761947.100000001, "elementIDAttribute": 30001835015, "stringAttribute": "id is 1835015"}}]}, {"communications": [{"bytes": 2288.0, "from": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "messages": 32, "to": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 5, "tasks": [{"entity": {"collection_id": 7, "home": 1, "id": 3407879, "index": [28], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.239900007021788e-05}, {"id": 1, "time": 1.1236999853281304e-05}, {"id": 2, "time": 1.389699991705129e-05}], "time": 3.856499984067341e-05, "attributes": {"intAttribute": 3407879, "doubleAttribute": 10700740.06, "elementIDAttribute": 30003407879, "stringAttribute": "id is 3407879"}}, {"entity": {"collection_id": 7, "home": 1, "id": 3145735, "index": [27], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2705000017376733e-05}, {"id": 1, "time": 1.1288999985481496e-05}, {"id": 2, "time": 1.3597000133813708e-05}], "time": 3.9059000300767366e-05, "attributes": {"intAttribute": 3145735, "doubleAttribute": 9877607.9, "elementIDAttribute": 30003145735, "stringAttribute": "id is 3145735"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2621447, "index": [25], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 3.6470999930315884e-05}, {"id": 1, "time": 1.138400011768681e-05}, {"id": 2, "time": 1.347599982182146e-05}], "time": 8.534699986739724e-05, "attributes": {"intAttribute": 2621447, "doubleAttribute": 8231343.58, "elementIDAttribute": 30002621447, "stringAttribute": "id is 2621447"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2359303, "index": [24], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 3.267300007792073e-05}, {"id": 1, "time": 1.1349999795129406e-05}, {"id": 2, "time": 1.383500011797878e-05}], "time": 5.93590000335098e-05, "attributes": {"intAttribute": 2359303, "doubleAttribute": 7408211.42, "elementIDAttribute": 30002359303, "stringAttribute": "id is 2359303"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2097159, "index": [23], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3430000080916216e-05}, {"id": 1, "time": 1.1323000080665224e-05}, {"id": 2, "time": 2.3671000008107512e-05}], "time": 5.0212000132887624e-05, "attributes": {"intAttribute": 2097159, "doubleAttribute": 6585079.260000001, "elementIDAttribute": 30002097159, "stringAttribute": "id is 2097159"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2883591, "index": [26], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 3.9378999872496934e-05}, {"id": 1, "time": 1.1197000048923655e-05}, {"id": 2, "time": 1.77560000338417e-05}], "time": 7.07689998762362e-05, "attributes": {"intAttribute": 2883591, "doubleAttribute": 9054475.74, "elementIDAttribute": 30002883591, "stringAttribute": "id is 2883591"}}, {"entity": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 0.00018308900030206132}], "time": 0.00018308900030206132, "attributes": {"intAttribute": 5, "doubleAttribute": 15.700000000000001, "elementIDAttribute": 30000000005, "stringAttribute": "id is 5"}}, {"entity": {"collection_id": 7, "home": 1, "id": 3932167, "index": [30], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2554000022646505e-05}, {"id": 1, "time": 1.2897999795313808e-05}, {"id": 2, "time": 1.4297999996415456e-05}], "time": 4.4053999772586394e-05, "attributes": {"intAttribute": 3932167, "doubleAttribute": 12347004.38, "elementIDAttribute": 30003932167, "stringAttribute": "id is 3932167"}}, {"entity": {"collection_id": 7, "home": 1, "id": 524295, "index": [17], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 2.9951999977129162e-05}, {"id": 1, "time": 1.2280999953873106e-05}, {"id": 2, "time": 1.3324000065040309e-05}], "time": 5.8086000080948e-05, "attributes": {"intAttribute": 524295, "doubleAttribute": 1646286.3, "elementIDAttribute": 30000524295, "stringAttribute": "id is 524295"}}, {"entity": {"home": 1, "id": 4194332, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 1, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194332, "doubleAttribute": 13170202.48, "elementIDAttribute": 30004194332, "stringAttribute": "id is 4194332"}}, {"entity": {"home": 1, "id": 3145756, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 3.3030000849976204e-06}], "time": 3.3030000849976204e-06, "attributes": {"intAttribute": 3145756, "doubleAttribute": 9877673.84, "elementIDAttribute": 30003145756, "stringAttribute": "id is 3145756"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1048583, "index": [19], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2986999990971526e-05}, {"id": 1, "time": 3.0030000061742612e-05}, {"id": 2, "time": 1.3651000017489423e-05}], "time": 8.091500012596953e-05, "attributes": {"intAttribute": 1048583, "doubleAttribute": 3292550.62, "elementIDAttribute": 30001048583, "stringAttribute": "id is 1048583"}}, {"entity": {"collection_id": 7, "home": 1, "id": 4194311, "index": [31], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 2.4377000045205932e-05}, {"id": 1, "time": 5.5400000064764754e-05}, {"id": 2, "time": 2.9199000209700898e-05}], "time": 0.00011747200028366933, "attributes": {"intAttribute": 4194311, "doubleAttribute": 13170136.540000001, "elementIDAttribute": 30004194311, "stringAttribute": "id is 4194311"}}, {"entity": {"collection_id": 7, "home": 1, "id": 786439, "index": [18], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2818999948649434e-05}, {"id": 1, "time": 1.1917999927391065e-05}, {"id": 2, "time": 1.32210000174382e-05}], "time": 4.004199990959023e-05, "attributes": {"intAttribute": 786439, "doubleAttribute": 2469418.46, "elementIDAttribute": 30000786439, "stringAttribute": "id is 786439"}}, {"entity": {"collection_id": 7, "home": 1, "id": 3670023, "index": [29], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 2.925099988715374e-05}, {"id": 1, "time": 3.0325000125230872e-05}, {"id": 2, "time": 1.3246999969851458e-05}], "time": 7.528099990850023e-05, "attributes": {"intAttribute": 3670023, "doubleAttribute": 11523872.22, "elementIDAttribute": 30003670023, "stringAttribute": "id is 3670023"}}, {"entity": {"collection_id": 7, "home": 1, "id": 262151, "index": [16], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 3.46230001468939e-05}, {"id": 1, "time": 5.4088000069896225e-05}, {"id": 2, "time": 1.314299993282475e-05}], "time": 0.00010336100012864335, "attributes": {"intAttribute": 262151, "doubleAttribute": 823154.14, "elementIDAttribute": 30000262151, "stringAttribute": "id is 262151"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1310727, "index": [20], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 3.0382999966604984e-05}, {"id": 1, "time": 1.1558999858607422e-05}, {"id": 2, "time": 1.3426999885268742e-05}], "time": 5.677199965248292e-05, "attributes": {"intAttribute": 1310727, "doubleAttribute": 4115682.7800000003, "elementIDAttribute": 30001310727, "stringAttribute": "id is 1310727"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1572871, "index": [21], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 4.410300016388646e-05}, {"id": 1, "time": 1.1149000101795536e-05}, {"id": 2, "time": 1.297299991165346e-05}], "time": 6.946400003471354e-05, "attributes": {"intAttribute": 1572871, "doubleAttribute": 4938814.94, "elementIDAttribute": 30001572871, "stringAttribute": "id is 1572871"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1835015, "index": [22], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3086999842926161e-05}, {"id": 1, "time": 1.1328000027788221e-05}, {"id": 2, "time": 1.3194000075600343e-05}], "time": 3.867300006277219e-05, "attributes": {"intAttribute": 1835015, "doubleAttribute": 5761947.100000001, "elementIDAttribute": 30001835015, "stringAttribute": "id is 1835015"}}]}, {"communications": [{"bytes": 2288.0, "from": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "messages": 32, "to": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 6, "tasks": [{"entity": {"collection_id": 7, "home": 1, "id": 3407879, "index": [28], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1900000117748277e-05}, {"id": 1, "time": 1.1137999990751268e-05}, {"id": 2, "time": 5.1418000111880247e-05}], "time": 7.564600014120515e-05, "attributes": {"intAttribute": 3407879, "doubleAttribute": 10700740.06, "elementIDAttribute": 30003407879, "stringAttribute": "id is 3407879"}}, {"entity": {"collection_id": 7, "home": 1, "id": 3145735, "index": [27], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1963999895669986e-05}, {"id": 1, "time": 1.105799992728862e-05}, {"id": 2, "time": 1.3000999842915917e-05}], "time": 6.25319996743201e-05, "attributes": {"intAttribute": 3145735, "doubleAttribute": 9877607.9, "elementIDAttribute": 30003145735, "stringAttribute": "id is 3145735"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2621447, "index": [25], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1998999980278313e-05}, {"id": 1, "time": 1.112000018110848e-05}, {"id": 2, "time": 3.379800000402611e-05}], "time": 5.795900005978183e-05, "attributes": {"intAttribute": 2621447, "doubleAttribute": 8231343.58, "elementIDAttribute": 30002621447, "stringAttribute": "id is 2621447"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2359303, "index": [24], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2079000043740962e-05}, {"id": 1, "time": 1.125199992202397e-05}, {"id": 2, "time": 3.7836000046809204e-05}], "time": 6.266000013965822e-05, "attributes": {"intAttribute": 2359303, "doubleAttribute": 7408211.42, "elementIDAttribute": 30002359303, "stringAttribute": "id is 2359303"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2097159, "index": [23], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2139000091337948e-05}, {"id": 1, "time": 1.1253999900873168e-05}, {"id": 2, "time": 5.6506999953853665e-05}], "time": 8.201699984056177e-05, "attributes": {"intAttribute": 2097159, "doubleAttribute": 6585079.260000001, "elementIDAttribute": 30002097159, "stringAttribute": "id is 2097159"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2883591, "index": [26], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.195799995912239e-05}, {"id": 1, "time": 1.1169999879712122e-05}, {"id": 2, "time": 1.4105999980529305e-05}], "time": 3.8839999888296006e-05, "attributes": {"intAttribute": 2883591, "doubleAttribute": 9054475.74, "elementIDAttribute": 30002883591, "stringAttribute": "id is 2883591"}}, {"entity": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0001270310008294473}], "time": 0.0001270310008294473, "attributes": {"intAttribute": 5, "doubleAttribute": 15.700000000000001, "elementIDAttribute": 30000000005, "stringAttribute": "id is 5"}}, {"entity": {"collection_id": 7, "home": 1, "id": 3932167, "index": [30], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2682000033237273e-05}, {"id": 1, "time": 1.1966999863943784e-05}, {"id": 2, "time": 1.2203000096633332e-05}], "time": 4.0481000041836523e-05, "attributes": {"intAttribute": 3932167, "doubleAttribute": 12347004.38, "elementIDAttribute": 30003932167, "stringAttribute": "id is 3932167"}}, {"entity": {"collection_id": 7, "home": 1, "id": 524295, "index": [17], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2132000165365753e-05}, {"id": 1, "time": 1.1402999916754197e-05}, {"id": 2, "time": 4.338000007919618e-05}], "time": 6.915300014043169e-05, "attributes": {"intAttribute": 524295, "doubleAttribute": 1646286.3, "elementIDAttribute": 30000524295, "stringAttribute": "id is 524295"}}, {"entity": {"home": 1, "id": 4194332, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 1, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194332, "doubleAttribute": 13170202.48, "elementIDAttribute": 30004194332, "stringAttribute": "id is 4194332"}}, {"entity": {"home": 1, "id": 3145756, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 3.330999788886402e-06}], "time": 3.330999788886402e-06, "attributes": {"intAttribute": 3145756, "doubleAttribute": 9877673.84, "elementIDAttribute": 30003145756, "stringAttribute": "id is 3145756"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1048583, "index": [19], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1977999974988052e-05}, {"id": 1, "time": 1.1504999974931707e-05}, {"id": 2, "time": 1.2055000070176902e-05}], "time": 3.770200009967084e-05, "attributes": {"intAttribute": 1048583, "doubleAttribute": 3292550.62, "elementIDAttribute": 30001048583, "stringAttribute": "id is 1048583"}}, {"entity": {"collection_id": 7, "home": 1, "id": 4194311, "index": [31], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 2.059600001302897e-05}, {"id": 1, "time": 2.4772000188022503e-05}, {"id": 2, "time": 2.8161000045656692e-05}], "time": 8.021800022106618e-05, "attributes": {"intAttribute": 4194311, "doubleAttribute": 13170136.540000001, "elementIDAttribute": 30004194311, "stringAttribute": "id is 4194311"}}, {"entity": {"collection_id": 7, "home": 1, "id": 786439, "index": [18], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1935999964407529e-05}, {"id": 1, "time": 1.1279000091235503e-05}, {"id": 2, "time": 5.934099999649334e-05}], "time": 8.377699987249798e-05, "attributes": {"intAttribute": 786439, "doubleAttribute": 2469418.46, "elementIDAttribute": 30000786439, "stringAttribute": "id is 786439"}}, {"entity": {"collection_id": 7, "home": 1, "id": 3670023, "index": [29], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2324999943302828e-05}, {"id": 1, "time": 1.1215000085940119e-05}, {"id": 2, "time": 1.1287999996056897e-05}], "time": 3.720900008374883e-05, "attributes": {"intAttribute": 3670023, "doubleAttribute": 11523872.22, "elementIDAttribute": 30003670023, "stringAttribute": "id is 3670023"}}, {"entity": {"collection_id": 7, "home": 1, "id": 262151, "index": [16], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 3.0505000040648156e-05}, {"id": 1, "time": 1.1548999964361428e-05}, {"id": 2, "time": 1.163899992207007e-05}], "time": 5.5776999943191186e-05, "attributes": {"intAttribute": 262151, "doubleAttribute": 823154.14, "elementIDAttribute": 30000262151, "stringAttribute": "id is 262151"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1310727, "index": [20], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1949000054300996e-05}, {"id": 1, "time": 1.127499990616343e-05}, {"id": 2, "time": 5.4972999805613654e-05}], "time": 7.945199968162342e-05, "attributes": {"intAttribute": 1310727, "doubleAttribute": 4115682.7800000003, "elementIDAttribute": 30001310727, "stringAttribute": "id is 1310727"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1572871, "index": [21], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.195699996969779e-05}, {"id": 1, "time": 1.1148000112370937e-05}, {"id": 2, "time": 3.7002999988544616e-05}], "time": 6.1179000113043e-05, "attributes": {"intAttribute": 1572871, "doubleAttribute": 4938814.94, "elementIDAttribute": 30001572871, "stringAttribute": "id is 1572871"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1835015, "index": [22], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1919999906240264e-05}, {"id": 1, "time": 1.1257000096520642e-05}, {"id": 2, "time": 5.2787000186071964e-05}], "time": 7.713800027886464e-05, "attributes": {"intAttribute": 1835015, "doubleAttribute": 5761947.100000001, "elementIDAttribute": 30001835015, "stringAttribute": "id is 1835015"}}]}, {"communications": [{"bytes": 2096.0, "from": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "messages": 29, "to": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 7, "tasks": [{"entity": {"collection_id": 7, "home": 1, "id": 3407879, "index": [28], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2887999901067815e-05}, {"id": 1, "time": 1.3077999938104767e-05}, {"id": 2, "time": 1.1109999832115136e-05}], "time": 3.821499967671116e-05, "attributes": {"intAttribute": 3407879, "doubleAttribute": 10700740.06, "elementIDAttribute": 30003407879, "stringAttribute": "id is 3407879"}}, {"entity": {"collection_id": 7, "home": 1, "id": 3145735, "index": [27], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.300400003856339e-05}, {"id": 1, "time": 1.3287000001582783e-05}, {"id": 2, "time": 1.1327000038363622e-05}], "time": 3.890100015269127e-05, "attributes": {"intAttribute": 3145735, "doubleAttribute": 9877607.9, "elementIDAttribute": 30003145735, "stringAttribute": "id is 3145735"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2621447, "index": [25], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3031999969825847e-05}, {"id": 1, "time": 1.3029999990976648e-05}, {"id": 2, "time": 1.1110000059488812e-05}], "time": 3.883199997289921e-05, "attributes": {"intAttribute": 2621447, "doubleAttribute": 8231343.58, "elementIDAttribute": 30002621447, "stringAttribute": "id is 2621447"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2359303, "index": [24], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3085000091450638e-05}, {"id": 1, "time": 1.3179999996282277e-05}, {"id": 2, "time": 1.1355999959050678e-05}], "time": 3.906500023731496e-05, "attributes": {"intAttribute": 2359303, "doubleAttribute": 7408211.42, "elementIDAttribute": 30002359303, "stringAttribute": "id is 2359303"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2097159, "index": [23], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2979999837625655e-05}, {"id": 1, "time": 1.309599997512123e-05}, {"id": 2, "time": 1.1114000017187209e-05}], "time": 3.9630999708606396e-05, "attributes": {"intAttribute": 2097159, "doubleAttribute": 6585079.260000001, "elementIDAttribute": 30002097159, "stringAttribute": "id is 2097159"}}, {"entity": {"collection_id": 7, "home": 1, "id": 2883591, "index": [26], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3046000049143913e-05}, {"id": 1, "time": 1.3026000033278251e-05}, {"id": 2, "time": 1.1116999985461007e-05}], "time": 3.913299997293507e-05, "attributes": {"intAttribute": 2883591, "doubleAttribute": 9054475.74, "elementIDAttribute": 30002883591, "stringAttribute": "id is 2883591"}}, {"entity": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 0.00013277800007927}], "time": 0.00013277800007927, "attributes": {"intAttribute": 5, "doubleAttribute": 15.700000000000001, "elementIDAttribute": 30000000005, "stringAttribute": "id is 5"}}, {"entity": {"collection_id": 7, "home": 1, "id": 3932167, "index": [30], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.36090000069089e-05}, {"id": 1, "time": 1.4261999922382529e-05}, {"id": 2, "time": 1.2285999900996103e-05}], "time": 4.450099982022948e-05, "attributes": {"intAttribute": 3932167, "doubleAttribute": 12347004.38, "elementIDAttribute": 30003932167, "stringAttribute": "id is 3932167"}}, {"entity": {"collection_id": 7, "home": 1, "id": 524295, "index": [17], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.298000006499933e-05}, {"id": 1, "time": 1.354800019726099e-05}, {"id": 2, "time": 1.1540000059540034e-05}], "time": 4.0565000290371245e-05, "attributes": {"intAttribute": 524295, "doubleAttribute": 1646286.3, "elementIDAttribute": 30000524295, "stringAttribute": "id is 524295"}}, {"entity": {"home": 1, "id": 4194332, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 1, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194332, "doubleAttribute": 13170202.48, "elementIDAttribute": 30004194332, "stringAttribute": "id is 4194332"}}, {"entity": {"home": 1, "id": 3145756, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 3.4049999158014543e-06}], "time": 3.4049999158014543e-06, "attributes": {"intAttribute": 3145756, "doubleAttribute": 9877673.84, "elementIDAttribute": 30003145756, "stringAttribute": "id is 3145756"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1048583, "index": [19], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3079000154903042e-05}, {"id": 1, "time": 1.3363999869397958e-05}, {"id": 2, "time": 1.1777000054280506e-05}], "time": 4.022600001007959e-05, "attributes": {"intAttribute": 1048583, "doubleAttribute": 3292550.62, "elementIDAttribute": 30001048583, "stringAttribute": "id is 1048583"}}, {"entity": {"collection_id": 7, "home": 1, "id": 4194311, "index": [31], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 2.9833999860784388e-05}, {"id": 1, "time": 4.293200004212849e-05}, {"id": 2, "time": 2.5614000151108485e-05}], "time": 0.00010761800012915046, "attributes": {"intAttribute": 4194311, "doubleAttribute": 13170136.540000001, "elementIDAttribute": 30004194311, "stringAttribute": "id is 4194311"}}, {"entity": {"collection_id": 7, "home": 1, "id": 786439, "index": [18], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2998999864066718e-05}, {"id": 1, "time": 1.3315999922269839e-05}, {"id": 2, "time": 1.1383999890313135e-05}], "time": 3.95119998302107e-05, "attributes": {"intAttribute": 786439, "doubleAttribute": 2469418.46, "elementIDAttribute": 30000786439, "stringAttribute": "id is 786439"}}, {"entity": {"collection_id": 7, "home": 1, "id": 3670023, "index": [29], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2964999996256665e-05}, {"id": 1, "time": 1.3201999990997138e-05}, {"id": 2, "time": 1.1146000133521738e-05}], "time": 4.0365000131714623e-05, "attributes": {"intAttribute": 3670023, "doubleAttribute": 11523872.22, "elementIDAttribute": 30003670023, "stringAttribute": "id is 3670023"}}, {"entity": {"collection_id": 7, "home": 1, "id": 262151, "index": [16], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3008999985686387e-05}, {"id": 1, "time": 1.3249999938125256e-05}, {"id": 2, "time": 1.1317999906168552e-05}], "time": 3.9950999735083315e-05, "attributes": {"intAttribute": 262151, "doubleAttribute": 823154.14, "elementIDAttribute": 30000262151, "stringAttribute": "id is 262151"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1310727, "index": [20], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2913999853481073e-05}, {"id": 1, "time": 1.2952000133736874e-05}, {"id": 2, "time": 1.1115000006611808e-05}], "time": 3.879199994116789e-05, "attributes": {"intAttribute": 1310727, "doubleAttribute": 4115682.7800000003, "elementIDAttribute": 30001310727, "stringAttribute": "id is 1310727"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1572871, "index": [21], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3121000165483565e-05}, {"id": 1, "time": 1.3022000075579854e-05}, {"id": 2, "time": 1.1146999895572662e-05}], "time": 3.930500020032923e-05, "attributes": {"intAttribute": 1572871, "doubleAttribute": 4938814.94, "elementIDAttribute": 30001572871, "stringAttribute": "id is 1572871"}}, {"entity": {"collection_id": 7, "home": 1, "id": 1835015, "index": [22], "migratable": true, "type": "object"}, "node": 1, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2986999990971526e-05}, {"id": 1, "time": 1.3257999853522051e-05}, {"id": 2, "time": 1.1273000154687907e-05}], "time": 3.893200005222752e-05, "attributes": {"intAttribute": 1835015, "doubleAttribute": 5761947.100000001, "elementIDAttribute": 30001835015, "stringAttribute": "id is 1835015"}}]}]} \ No newline at end of file diff --git a/tests/unit/synthetic_attributes/data.1.json.br b/tests/unit/synthetic_attributes/data.1.json.br new file mode 100644 index 0000000000..636557650f Binary files /dev/null and b/tests/unit/synthetic_attributes/data.1.json.br differ diff --git a/tests/unit/synthetic_attributes/data.2.json b/tests/unit/synthetic_attributes/data.2.json new file mode 100644 index 0000000000..c1451b1fbb --- /dev/null +++ b/tests/unit/synthetic_attributes/data.2.json @@ -0,0 +1 @@ +{"metadata": {"rank": 2, "shared_node": {"id": 0, "num_nodes": 1, "rank": 2, "size": 4}, "type": "LBDatafile", "attributes": {"intAttribute": 2, "doubleAttribute": 6.28, "elementIDAttribute": 30000000002, "stringAttribute": "id is 2"}}, "phases": [{"communications": [{"bytes": 112.0, "from": {"home": 0, "id": 0, "migratable": false, "type": "object"}, "messages": 2, "to": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "type": "SendRecv"}, {"bytes": 1216.0, "from": {"home": 2, "id": 9, "migratable": false, "type": "object"}, "messages": 17, "to": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 0, "tasks": [{"entity": {"collection_id": 7, "home": 2, "id": 3407883, "index": [44], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001383855000085532}, {"id": 1, "time": 0.0010977629999615601}, {"id": 2, "time": 0.0010997770000358287}], "time": 0.003581395000082921, "attributes": {"intAttribute": 3407883, "doubleAttribute": 10700752.620000001, "elementIDAttribute": 30003407883, "stringAttribute": "id is 3407883"}}, {"entity": {"collection_id": 7, "home": 2, "id": 3145739, "index": [43], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0019648789998427674}, {"id": 1, "time": 0.0010997150000093825}, {"id": 2, "time": 0.0011126010001589748}], "time": 0.004177195000011125, "attributes": {"intAttribute": 3145739, "doubleAttribute": 9877620.46, "elementIDAttribute": 30003145739, "stringAttribute": "id is 3145739"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2621451, "index": [41], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012923490000957827}, {"id": 1, "time": 0.0011952259999361559}, {"id": 2, "time": 0.001114477000101033}], "time": 0.0036020520001329714, "attributes": {"intAttribute": 2621451, "doubleAttribute": 8231356.140000001, "elementIDAttribute": 30002621451, "stringAttribute": "id is 2621451"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2359307, "index": [40], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1968000080742058e-05}, {"id": 1, "time": 1.1167999900862924e-05}, {"id": 2, "time": 1.1170999869136722e-05}], "time": 3.4306999850741704e-05, "attributes": {"intAttribute": 2359307, "doubleAttribute": 7408223.98, "elementIDAttribute": 30002359307, "stringAttribute": "id is 2359307"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2097163, "index": [39], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1849999964397284e-05}, {"id": 1, "time": 1.1123000149382278e-05}, {"id": 2, "time": 1.1233000122956582e-05}], "time": 3.4206000236736145e-05, "attributes": {"intAttribute": 2097163, "doubleAttribute": 6585091.82, "elementIDAttribute": 30002097163, "stringAttribute": "id is 2097163"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2883595, "index": [42], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001248024999995323}, {"id": 1, "time": 0.0013141230001565418}, {"id": 2, "time": 0.0010818789999120781}], "time": 0.003644027000063943, "attributes": {"intAttribute": 2883595, "doubleAttribute": 9054488.3, "elementIDAttribute": 30002883595, "stringAttribute": "id is 2883595"}}, {"entity": {"home": 2, "id": 9, "migratable": false, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 9.850499986896466e-05}], "time": 9.850499986896466e-05, "attributes": {"intAttribute": 9, "doubleAttribute": 28.26, "elementIDAttribute": 30000000009, "stringAttribute": "id is 9"}}, {"entity": {"collection_id": 7, "home": 2, "id": 3932171, "index": [46], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012114629998905002}, {"id": 1, "time": 0.0011056050000206596}, {"id": 2, "time": 0.001186607999898115}], "time": 0.003503675999809275, "attributes": {"intAttribute": 3932171, "doubleAttribute": 12347016.940000001, "elementIDAttribute": 30003932171, "stringAttribute": "id is 3932171"}}, {"entity": {"collection_id": 7, "home": 2, "id": 524299, "index": [33], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.8675000092116534e-05}, {"id": 1, "time": 1.132099987444235e-05}, {"id": 2, "time": 1.1400000175854075e-05}], "time": 4.139600014241296e-05, "attributes": {"intAttribute": 524299, "doubleAttribute": 1646298.86, "elementIDAttribute": 30000524299, "stringAttribute": "id is 524299"}}, {"entity": {"home": 2, "id": 4194348, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 2, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194348, "doubleAttribute": 13170252.72, "elementIDAttribute": 30004194348, "stringAttribute": "id is 4194348"}}, {"entity": {"home": 2, "id": 3145772, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 2, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 3145772, "doubleAttribute": 9877724.08, "elementIDAttribute": 30003145772, "stringAttribute": "id is 3145772"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1310731, "index": [36], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2384999990899814e-05}, {"id": 1, "time": 1.1106999863841338e-05}, {"id": 2, "time": 1.126000006479444e-05}], "time": 3.475199991953559e-05, "attributes": {"intAttribute": 1310731, "doubleAttribute": 4115695.3400000003, "elementIDAttribute": 30001310731, "stringAttribute": "id is 1310731"}}, {"entity": {"collection_id": 7, "home": 2, "id": 4194315, "index": [47], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012145000000600703}, {"id": 1, "time": 0.0011261439999543654}, {"id": 2, "time": 0.0011132410002119286}], "time": 0.0034538850002263644, "attributes": {"intAttribute": 4194315, "doubleAttribute": 13170149.1, "elementIDAttribute": 30004194315, "stringAttribute": "id is 4194315"}}, {"entity": {"collection_id": 7, "home": 2, "id": 786443, "index": [34], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2157999890405335e-05}, {"id": 1, "time": 1.1294999922029092e-05}, {"id": 2, "time": 1.1280999842711026e-05}], "time": 3.473399965514545e-05, "attributes": {"intAttribute": 786443, "doubleAttribute": 2469431.02, "elementIDAttribute": 30000786443, "stringAttribute": "id is 786443"}}, {"entity": {"collection_id": 7, "home": 2, "id": 3670027, "index": [45], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012543630000436679}, {"id": 1, "time": 0.0012252349999926082}, {"id": 2, "time": 0.0011488909999570751}], "time": 0.003628488999993351, "attributes": {"intAttribute": 3670027, "doubleAttribute": 11523884.780000001, "elementIDAttribute": 30003670027, "stringAttribute": "id is 3670027"}}, {"entity": {"collection_id": 7, "home": 2, "id": 262155, "index": [32], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.731399993332161e-05}, {"id": 1, "time": 1.5541000038865604e-05}, {"id": 2, "time": 1.2131999937992077e-05}], "time": 4.498699991017929e-05, "attributes": {"intAttribute": 262155, "doubleAttribute": 823166.7000000001, "elementIDAttribute": 30000262155, "stringAttribute": "id is 262155"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1048587, "index": [35], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 3.5787000115306e-05}, {"id": 1, "time": 1.1210000138817122e-05}, {"id": 2, "time": 1.1160999974890728e-05}], "time": 5.815800022901385e-05, "attributes": {"intAttribute": 1048587, "doubleAttribute": 3292563.18, "elementIDAttribute": 30001048587, "stringAttribute": "id is 1048587"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1572875, "index": [37], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 2.9779999977108673e-05}, {"id": 1, "time": 1.1116999985461007e-05}, {"id": 2, "time": 1.1206999943169649e-05}], "time": 5.210399990573933e-05, "attributes": {"intAttribute": 1572875, "doubleAttribute": 4938827.5, "elementIDAttribute": 30001572875, "stringAttribute": "id is 1572875"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1835019, "index": [38], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2023999943266972e-05}, {"id": 1, "time": 1.1091000033047749e-05}, {"id": 2, "time": 1.1179000011907192e-05}], "time": 3.429399998822191e-05, "attributes": {"intAttribute": 1835019, "doubleAttribute": 5761959.66, "elementIDAttribute": 30001835019, "stringAttribute": "id is 1835019"}}]}, {"communications": [{"bytes": 1600.0, "from": {"home": 2, "id": 9, "migratable": false, "type": "object"}, "messages": 25, "to": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 1, "tasks": [{"entity": {"collection_id": 7, "home": 2, "id": 3407883, "index": [44], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0013478070000019216}, {"id": 1, "time": 0.0012838700001793768}, {"id": 2, "time": 0.0012690690000454197}], "time": 0.003901810000115802, "attributes": {"intAttribute": 3407883, "doubleAttribute": 10700752.620000001, "elementIDAttribute": 30003407883, "stringAttribute": "id is 3407883"}}, {"entity": {"collection_id": 7, "home": 2, "id": 3145739, "index": [43], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012490389999584295}, {"id": 1, "time": 0.0013146409999080788}, {"id": 2, "time": 0.0010971439999138966}], "time": 0.0036621819997435523, "attributes": {"intAttribute": 3145739, "doubleAttribute": 9877620.46, "elementIDAttribute": 30003145739, "stringAttribute": "id is 3145739"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2621451, "index": [41], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012591069998961757}, {"id": 1, "time": 0.001291963999847212}, {"id": 2, "time": 0.001097765999929834}], "time": 0.0036500969997632637, "attributes": {"intAttribute": 2621451, "doubleAttribute": 8231356.140000001, "elementIDAttribute": 30002621451, "stringAttribute": "id is 2621451"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2359307, "index": [40], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2853000043833163e-05}, {"id": 1, "time": 1.319900002272334e-05}, {"id": 2, "time": 1.159199996436655e-05}], "time": 3.90069999411935e-05, "attributes": {"intAttribute": 2359307, "doubleAttribute": 7408223.98, "elementIDAttribute": 30002359307, "stringAttribute": "id is 2359307"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2097163, "index": [39], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2360000027911155e-05}, {"id": 1, "time": 1.2983000033273129e-05}, {"id": 2, "time": 1.1138999980175868e-05}], "time": 4.029600017929624e-05, "attributes": {"intAttribute": 2097163, "doubleAttribute": 6585091.82, "elementIDAttribute": 30002097163, "stringAttribute": "id is 2097163"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2883595, "index": [42], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001251690000117378}, {"id": 1, "time": 0.0013077860000976216}, {"id": 2, "time": 0.0011015110001153516}], "time": 0.003665541000373196, "attributes": {"intAttribute": 2883595, "doubleAttribute": 9054488.3, "elementIDAttribute": 30002883595, "stringAttribute": "id is 2883595"}}, {"entity": {"home": 2, "id": 9, "migratable": false, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.00017493900008958008}], "time": 0.00017493900008958008, "attributes": {"intAttribute": 9, "doubleAttribute": 28.26, "elementIDAttribute": 30000000009, "stringAttribute": "id is 9"}}, {"entity": {"collection_id": 7, "home": 2, "id": 3932171, "index": [46], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0014258830001381284}, {"id": 1, "time": 0.0012894730000425625}, {"id": 2, "time": 0.00115340100001049}], "time": 0.0038764490002449747, "attributes": {"intAttribute": 3932171, "doubleAttribute": 12347016.940000001, "elementIDAttribute": 30003932171, "stringAttribute": "id is 3932171"}}, {"entity": {"collection_id": 7, "home": 2, "id": 524299, "index": [33], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2737999895762186e-05}, {"id": 1, "time": 1.3254999885248253e-05}, {"id": 2, "time": 1.1403999906178797e-05}], "time": 3.8741999787816894e-05, "attributes": {"intAttribute": 524299, "doubleAttribute": 1646298.86, "elementIDAttribute": 30000524299, "stringAttribute": "id is 524299"}}, {"entity": {"home": 2, "id": 4194348, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 2, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194348, "doubleAttribute": 13170252.72, "elementIDAttribute": 30004194348, "stringAttribute": "id is 4194348"}}, {"entity": {"home": 2, "id": 3145772, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 7.529999948019395e-06}], "time": 7.529999948019395e-06, "attributes": {"intAttribute": 3145772, "doubleAttribute": 9877724.08, "elementIDAttribute": 30003145772, "stringAttribute": "id is 3145772"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1310731, "index": [36], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2577000006785966e-05}, {"id": 1, "time": 1.3084999864076963e-05}, {"id": 2, "time": 1.1275000133537105e-05}], "time": 3.8253000184340635e-05, "attributes": {"intAttribute": 1310731, "doubleAttribute": 4115695.3400000003, "elementIDAttribute": 30001310731, "stringAttribute": "id is 1310731"}}, {"entity": {"collection_id": 7, "home": 2, "id": 4194315, "index": [47], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0013421040000594076}, {"id": 1, "time": 0.0013126399999237037}, {"id": 2, "time": 0.0011183359999904496}], "time": 0.0037916080000286456, "attributes": {"intAttribute": 4194315, "doubleAttribute": 13170149.1, "elementIDAttribute": 30004194315, "stringAttribute": "id is 4194315"}}, {"entity": {"collection_id": 7, "home": 2, "id": 786443, "index": [34], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2591000086104032e-05}, {"id": 1, "time": 1.3256000102046528e-05}, {"id": 2, "time": 1.1266999990766635e-05}], "time": 3.873800005749217e-05, "attributes": {"intAttribute": 786443, "doubleAttribute": 2469431.02, "elementIDAttribute": 30000786443, "stringAttribute": "id is 786443"}}, {"entity": {"collection_id": 7, "home": 2, "id": 3670027, "index": [45], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012148939999860886}, {"id": 1, "time": 0.0013168030000088038}, {"id": 2, "time": 0.0015082980000897805}], "time": 0.004044128000032288, "attributes": {"intAttribute": 3670027, "doubleAttribute": 11523884.780000001, "elementIDAttribute": 30003670027, "stringAttribute": "id is 3670027"}}, {"entity": {"collection_id": 7, "home": 2, "id": 262155, "index": [32], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3443999932860606e-05}, {"id": 1, "time": 1.7932999980985187e-05}, {"id": 2, "time": 1.5157999996517901e-05}], "time": 4.839099983655615e-05, "attributes": {"intAttribute": 262155, "doubleAttribute": 823166.7000000001, "elementIDAttribute": 30000262155, "stringAttribute": "id is 262155"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1048587, "index": [35], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2458999890441191e-05}, {"id": 1, "time": 1.3019000107306056e-05}, {"id": 2, "time": 1.1223999990761513e-05}], "time": 3.9715999946565717e-05, "attributes": {"intAttribute": 1048587, "doubleAttribute": 3292563.18, "elementIDAttribute": 30001048587, "stringAttribute": "id is 1048587"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1572875, "index": [37], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2434000154826208e-05}, {"id": 1, "time": 1.31060000967409e-05}, {"id": 2, "time": 1.1260999826845364e-05}], "time": 3.803599997809215e-05, "attributes": {"intAttribute": 1572875, "doubleAttribute": 4938827.5, "elementIDAttribute": 30001572875, "stringAttribute": "id is 1572875"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1835019, "index": [38], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2370999911581748e-05}, {"id": 1, "time": 1.3057999922239105e-05}, {"id": 2, "time": 1.1225000207559788e-05}], "time": 3.7777999978061416e-05, "attributes": {"intAttribute": 1835019, "doubleAttribute": 5761959.66, "elementIDAttribute": 30001835019, "stringAttribute": "id is 1835019"}}]}, {"communications": [{"bytes": 1536.0, "from": {"home": 2, "id": 9, "migratable": false, "type": "object"}, "messages": 24, "to": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 2, "tasks": [{"entity": {"collection_id": 7, "home": 2, "id": 3407883, "index": [44], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0013321579999683308}, {"id": 1, "time": 0.001286039999968125}, {"id": 2, "time": 0.0011384100000668695}], "time": 0.0037580729999717732, "attributes": {"intAttribute": 3407883, "doubleAttribute": 10700752.620000001, "elementIDAttribute": 30003407883, "stringAttribute": "id is 3407883"}}, {"entity": {"collection_id": 7, "home": 2, "id": 3145739, "index": [43], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012939450000430952}, {"id": 1, "time": 0.0013132609999502165}, {"id": 2, "time": 0.0011022189999039256}], "time": 0.0037113419998604513, "attributes": {"intAttribute": 3145739, "doubleAttribute": 9877620.46, "elementIDAttribute": 30003145739, "stringAttribute": "id is 3145739"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2621451, "index": [41], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0013249460000679392}, {"id": 1, "time": 0.0012697869999556133}, {"id": 2, "time": 0.00113960900011989}], "time": 0.0037443520002398145, "attributes": {"intAttribute": 2621451, "doubleAttribute": 8231356.140000001, "elementIDAttribute": 30002621451, "stringAttribute": "id is 2621451"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2359307, "index": [40], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 3.1911999940348323e-05}, {"id": 1, "time": 1.265599985345034e-05}, {"id": 2, "time": 1.1164999932589126e-05}], "time": 5.703199963136285e-05, "attributes": {"intAttribute": 2359307, "doubleAttribute": 7408223.98, "elementIDAttribute": 30002359307, "stringAttribute": "id is 2359307"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2097163, "index": [39], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 5.239899996922759e-05}, {"id": 1, "time": 1.269400013370614e-05}, {"id": 2, "time": 1.1155000038343132e-05}], "time": 7.801800029483275e-05, "attributes": {"intAttribute": 2097163, "doubleAttribute": 6585091.82, "elementIDAttribute": 30002097163, "stringAttribute": "id is 2097163"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2883595, "index": [42], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0017549130000134028}, {"id": 1, "time": 0.0013224450001416699}, {"id": 2, "time": 0.001115148000053523}], "time": 0.004194641000140109, "attributes": {"intAttribute": 2883595, "doubleAttribute": 9054488.3, "elementIDAttribute": 30002883595, "stringAttribute": "id is 2883595"}}, {"entity": {"home": 2, "id": 9, "migratable": false, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 8.208599956560647e-05}], "time": 8.208599956560647e-05, "attributes": {"intAttribute": 9, "doubleAttribute": 28.26, "elementIDAttribute": 30000000009, "stringAttribute": "id is 9"}}, {"entity": {"collection_id": 7, "home": 2, "id": 3932171, "index": [46], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0019207210000331543}, {"id": 1, "time": 0.0012637160000394942}, {"id": 2, "time": 0.0012372969999887573}], "time": 0.0044256920002681, "attributes": {"intAttribute": 3932171, "doubleAttribute": 12347016.940000001, "elementIDAttribute": 30003932171, "stringAttribute": "id is 3932171"}}, {"entity": {"collection_id": 7, "home": 2, "id": 524299, "index": [33], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1750000112442649e-05}, {"id": 1, "time": 1.314299993282475e-05}, {"id": 2, "time": 1.1617000154728885e-05}], "time": 3.826500005743583e-05, "attributes": {"intAttribute": 524299, "doubleAttribute": 1646298.86, "elementIDAttribute": 30000524299, "stringAttribute": "id is 524299"}}, {"entity": {"home": 2, "id": 4194348, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 2, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194348, "doubleAttribute": 13170252.72, "elementIDAttribute": 30004194348, "stringAttribute": "id is 4194348"}}, {"entity": {"home": 2, "id": 3145772, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 2.64450000031502e-05}], "time": 2.64450000031502e-05, "attributes": {"intAttribute": 3145772, "doubleAttribute": 9877724.08, "elementIDAttribute": 30003145772, "stringAttribute": "id is 3145772"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1310731, "index": [36], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1147000122946338e-05}, {"id": 1, "time": 1.2749000006806455e-05}, {"id": 2, "time": 1.1221000022487715e-05}], "time": 3.726600016307202e-05, "attributes": {"intAttribute": 1310731, "doubleAttribute": 4115695.3400000003, "elementIDAttribute": 30001310731, "stringAttribute": "id is 1310731"}}, {"entity": {"collection_id": 7, "home": 2, "id": 4194315, "index": [47], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0016432820000318316}, {"id": 1, "time": 0.0012858600000527076}, {"id": 2, "time": 0.0011150570001063898}], "time": 0.004053960000192092, "attributes": {"intAttribute": 4194315, "doubleAttribute": 13170149.1, "elementIDAttribute": 30004194315, "stringAttribute": "id is 4194315"}}, {"entity": {"collection_id": 7, "home": 2, "id": 786443, "index": [34], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1325999821565347e-05}, {"id": 1, "time": 1.2951000144312275e-05}, {"id": 2, "time": 1.136799983214587e-05}], "time": 3.70689999726892e-05, "attributes": {"intAttribute": 786443, "doubleAttribute": 2469431.02, "elementIDAttribute": 30000786443, "stringAttribute": "id is 786443"}}, {"entity": {"collection_id": 7, "home": 2, "id": 3670027, "index": [45], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0014575499999409658}, {"id": 1, "time": 0.0012675499999659223}, {"id": 2, "time": 0.0011421409999456955}], "time": 0.003869849999773578, "attributes": {"intAttribute": 3670027, "doubleAttribute": 11523884.780000001, "elementIDAttribute": 30003670027, "stringAttribute": "id is 3670027"}}, {"entity": {"collection_id": 7, "home": 2, "id": 262155, "index": [32], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 3.272399999332265e-05}, {"id": 1, "time": 1.3847999980498571e-05}, {"id": 2, "time": 1.2110999932701816e-05}], "time": 6.138799994914734e-05, "attributes": {"intAttribute": 262155, "doubleAttribute": 823166.7000000001, "elementIDAttribute": 30000262155, "stringAttribute": "id is 262155"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1048587, "index": [35], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1178000022482593e-05}, {"id": 1, "time": 1.2624999953914084e-05}, {"id": 2, "time": 1.1154000048918533e-05}], "time": 3.678299981402233e-05, "attributes": {"intAttribute": 1048587, "doubleAttribute": 3292563.18, "elementIDAttribute": 30001048587, "stringAttribute": "id is 1048587"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1572875, "index": [37], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1180000001331791e-05}, {"id": 1, "time": 1.2671999911617604e-05}, {"id": 2, "time": 1.137599997491634e-05}], "time": 3.6811999962083064e-05, "attributes": {"intAttribute": 1572875, "doubleAttribute": 4938827.5, "elementIDAttribute": 30001572875, "stringAttribute": "id is 1572875"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1835019, "index": [38], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1099999937869143e-05}, {"id": 1, "time": 1.2702000049102935e-05}, {"id": 2, "time": 1.1224999980186112e-05}], "time": 3.7094999925102456e-05, "attributes": {"intAttribute": 1835019, "doubleAttribute": 5761959.66, "elementIDAttribute": 30001835019, "stringAttribute": "id is 1835019"}}]}, {"communications": [{"bytes": 1536.0, "from": {"home": 2, "id": 9, "migratable": false, "type": "object"}, "messages": 24, "to": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 3, "tasks": [{"entity": {"collection_id": 7, "home": 2, "id": 3407883, "index": [44], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0011394200000722776}, {"id": 1, "time": 0.0013150450001830905}, {"id": 2, "time": 0.0011176949999480712}], "time": 0.003573272000267025, "attributes": {"intAttribute": 3407883, "doubleAttribute": 10700752.620000001, "elementIDAttribute": 30003407883, "stringAttribute": "id is 3407883"}}, {"entity": {"collection_id": 7, "home": 2, "id": 3145739, "index": [43], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001143512999988161}, {"id": 1, "time": 0.0011031059998458659}, {"id": 2, "time": 0.0014105380000728474}], "time": 0.003658427999880587, "attributes": {"intAttribute": 3145739, "doubleAttribute": 9877620.46, "elementIDAttribute": 30003145739, "stringAttribute": "id is 3145739"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2621451, "index": [41], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001461169000094742}, {"id": 1, "time": 0.0013401769999745738}, {"id": 2, "time": 0.001097217000051387}], "time": 0.0038995449999674747, "attributes": {"intAttribute": 2621451, "doubleAttribute": 8231356.140000001, "elementIDAttribute": 30002621451, "stringAttribute": "id is 2621451"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2359307, "index": [40], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1405000122977071e-05}, {"id": 1, "time": 1.1885000049005612e-05}, {"id": 2, "time": 1.1269999959040433e-05}], "time": 3.569300019989896e-05, "attributes": {"intAttribute": 2359307, "doubleAttribute": 7408223.98, "elementIDAttribute": 30002359307, "stringAttribute": "id is 2359307"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2097163, "index": [39], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1292999943179893e-05}, {"id": 1, "time": 3.6401999977897503e-05}, {"id": 2, "time": 1.1485999948490644e-05}], "time": 6.128299992269604e-05, "attributes": {"intAttribute": 2097163, "doubleAttribute": 6585091.82, "elementIDAttribute": 30002097163, "stringAttribute": "id is 2097163"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2883595, "index": [42], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0013551559998177254}, {"id": 1, "time": 0.0011216650000278605}, {"id": 2, "time": 0.0011943929998778913}], "time": 0.003672844999755398, "attributes": {"intAttribute": 2883595, "doubleAttribute": 9054488.3, "elementIDAttribute": 30002883595, "stringAttribute": "id is 2883595"}}, {"entity": {"home": 2, "id": 9, "migratable": false, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.00015671599999222963}], "time": 0.00015671599999222963, "attributes": {"intAttribute": 9, "doubleAttribute": 28.26, "elementIDAttribute": 30000000009, "stringAttribute": "id is 9"}}, {"entity": {"collection_id": 7, "home": 2, "id": 3932171, "index": [46], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0017792999999528547}, {"id": 1, "time": 0.00110293499983527}, {"id": 2, "time": 0.0011260720000336732}], "time": 0.004011832999822218, "attributes": {"intAttribute": 3932171, "doubleAttribute": 12347016.940000001, "elementIDAttribute": 30003932171, "stringAttribute": "id is 3932171"}}, {"entity": {"collection_id": 7, "home": 2, "id": 524299, "index": [33], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2319999996179831e-05}, {"id": 1, "time": 2.16339999496995e-05}, {"id": 2, "time": 1.1497000059534912e-05}], "time": 4.737099993690208e-05, "attributes": {"intAttribute": 524299, "doubleAttribute": 1646298.86, "elementIDAttribute": 30000524299, "stringAttribute": "id is 524299"}}, {"entity": {"home": 2, "id": 4194348, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 2, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194348, "doubleAttribute": 13170252.72, "elementIDAttribute": 30004194348, "stringAttribute": "id is 4194348"}}, {"entity": {"home": 2, "id": 3145772, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 3.265000032115495e-06}], "time": 3.265000032115495e-06, "attributes": {"intAttribute": 3145772, "doubleAttribute": 9877724.08, "elementIDAttribute": 30003145772, "stringAttribute": "id is 3145772"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1310731, "index": [36], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2178999895695597e-05}, {"id": 1, "time": 1.1610999990807613e-05}, {"id": 2, "time": 1.1457000027803588e-05}], "time": 3.657199977169512e-05, "attributes": {"intAttribute": 1310731, "doubleAttribute": 4115695.3400000003, "elementIDAttribute": 30001310731, "stringAttribute": "id is 1310731"}}, {"entity": {"collection_id": 7, "home": 2, "id": 4194315, "index": [47], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0019297870001082629}, {"id": 1, "time": 0.0014460490001511062}, {"id": 2, "time": 0.0011610579999796755}], "time": 0.004544781000276998, "attributes": {"intAttribute": 4194315, "doubleAttribute": 13170149.1, "elementIDAttribute": 30004194315, "stringAttribute": "id is 4194315"}}, {"entity": {"collection_id": 7, "home": 2, "id": 786443, "index": [34], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2288000107218977e-05}, {"id": 1, "time": 1.2334000075497897e-05}, {"id": 2, "time": 1.1336999932609615e-05}], "time": 3.728800015778688e-05, "attributes": {"intAttribute": 786443, "doubleAttribute": 2469431.02, "elementIDAttribute": 30000786443, "stringAttribute": "id is 786443"}}, {"entity": {"collection_id": 7, "home": 2, "id": 3670027, "index": [45], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0018325300000014977}, {"id": 1, "time": 0.0015774910000345699}, {"id": 2, "time": 0.0010980899999140092}], "time": 0.004509510999923805, "attributes": {"intAttribute": 3670027, "doubleAttribute": 11523884.780000001, "elementIDAttribute": 30003670027, "stringAttribute": "id is 3670027"}}, {"entity": {"collection_id": 7, "home": 2, "id": 262155, "index": [32], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3230999911684194e-05}, {"id": 1, "time": 1.4875000033498509e-05}, {"id": 2, "time": 1.1925000080736936e-05}], "time": 5.7975000117949094e-05, "attributes": {"intAttribute": 262155, "doubleAttribute": 823166.7000000001, "elementIDAttribute": 30000262155, "stringAttribute": "id is 262155"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1048587, "index": [35], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2257999969733646e-05}, {"id": 1, "time": 1.1473000085970853e-05}, {"id": 2, "time": 1.1241000038353377e-05}], "time": 3.677600011542381e-05, "attributes": {"intAttribute": 1048587, "doubleAttribute": 3292563.18, "elementIDAttribute": 30001048587, "stringAttribute": "id is 1048587"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1572875, "index": [37], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 2.7700000146069215e-05}, {"id": 1, "time": 1.9123999891235144e-05}, {"id": 2, "time": 1.1309999990771757e-05}], "time": 5.922300010752224e-05, "attributes": {"intAttribute": 1572875, "doubleAttribute": 4938827.5, "elementIDAttribute": 30001572875, "stringAttribute": "id is 1572875"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1835019, "index": [38], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1470999879747978e-05}, {"id": 1, "time": 4.7855000048002694e-05}, {"id": 2, "time": 1.1245999985476374e-05}], "time": 9.42219999160443e-05, "attributes": {"intAttribute": 1835019, "doubleAttribute": 5761959.66, "elementIDAttribute": 30001835019, "stringAttribute": "id is 1835019"}}]}, {"communications": [{"bytes": 1536.0, "from": {"home": 2, "id": 9, "migratable": false, "type": "object"}, "messages": 24, "to": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 4, "tasks": [{"entity": {"collection_id": 7, "home": 2, "id": 3407883, "index": [44], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0017572890001247288}, {"id": 1, "time": 0.0013054349999492842}, {"id": 2, "time": 0.0014086449998558237}], "time": 0.004472527999951126, "attributes": {"intAttribute": 3407883, "doubleAttribute": 10700752.620000001, "elementIDAttribute": 30003407883, "stringAttribute": "id is 3407883"}}, {"entity": {"collection_id": 7, "home": 2, "id": 3145739, "index": [43], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001383316999863382}, {"id": 1, "time": 0.001286910000089847}, {"id": 2, "time": 0.0011050380001051963}], "time": 0.0037763700001960387, "attributes": {"intAttribute": 3145739, "doubleAttribute": 9877620.46, "elementIDAttribute": 30003145739, "stringAttribute": "id is 3145739"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2621451, "index": [41], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0017664729998614348}, {"id": 1, "time": 0.001300776000107362}, {"id": 2, "time": 0.0012954240000908612}], "time": 0.004363667000006899, "attributes": {"intAttribute": 2621451, "doubleAttribute": 8231356.140000001, "elementIDAttribute": 30002621451, "stringAttribute": "id is 2621451"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2359307, "index": [40], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 3.648200004136015e-05}, {"id": 1, "time": 1.3179999996282277e-05}, {"id": 2, "time": 1.1217999826840241e-05}], "time": 6.202099984875531e-05, "attributes": {"intAttribute": 2359307, "doubleAttribute": 7408223.98, "elementIDAttribute": 30002359307, "stringAttribute": "id is 2359307"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2097163, "index": [39], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 3.1132999993133126e-05}, {"id": 1, "time": 1.3310999975146842e-05}, {"id": 2, "time": 1.1393000022508204e-05}], "time": 5.772999998043815e-05, "attributes": {"intAttribute": 2097163, "doubleAttribute": 6585091.82, "elementIDAttribute": 30002097163, "stringAttribute": "id is 2097163"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2883595, "index": [42], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.00177663600015876}, {"id": 1, "time": 0.0012841339998885815}, {"id": 2, "time": 0.0011048399999253888}], "time": 0.0041675239999676705, "attributes": {"intAttribute": 2883595, "doubleAttribute": 9054488.3, "elementIDAttribute": 30002883595, "stringAttribute": "id is 2883595"}}, {"entity": {"home": 2, "id": 9, "migratable": false, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0001722620002055919}], "time": 0.0001722620002055919, "attributes": {"intAttribute": 9, "doubleAttribute": 28.26, "elementIDAttribute": 30000000009, "stringAttribute": "id is 9"}}, {"entity": {"collection_id": 7, "home": 2, "id": 3932171, "index": [46], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001662460000034116}, {"id": 1, "time": 0.0013351709999369632}, {"id": 2, "time": 0.0013008739999804675}], "time": 0.004302335999909701, "attributes": {"intAttribute": 3932171, "doubleAttribute": 12347016.940000001, "elementIDAttribute": 30003932171, "stringAttribute": "id is 3932171"}}, {"entity": {"collection_id": 7, "home": 2, "id": 524299, "index": [33], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3209999906393932e-05}, {"id": 1, "time": 1.356200004920538e-05}, {"id": 2, "time": 1.1626000059550279e-05}], "time": 3.9911999920150265e-05, "attributes": {"intAttribute": 524299, "doubleAttribute": 1646298.86, "elementIDAttribute": 30000524299, "stringAttribute": "id is 524299"}}, {"entity": {"home": 2, "id": 4194348, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 2, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194348, "doubleAttribute": 13170252.72, "elementIDAttribute": 30004194348, "stringAttribute": "id is 4194348"}}, {"entity": {"home": 2, "id": 3145772, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 3.769999921132694e-06}], "time": 3.769999921132694e-06, "attributes": {"intAttribute": 3145772, "doubleAttribute": 9877724.08, "elementIDAttribute": 30003145772, "stringAttribute": "id is 3145772"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1310731, "index": [36], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.305099999626691e-05}, {"id": 1, "time": 1.336800005447003e-05}, {"id": 2, "time": 1.143100007539033e-05}], "time": 3.945700018448406e-05, "attributes": {"intAttribute": 1310731, "doubleAttribute": 4115695.3400000003, "elementIDAttribute": 30001310731, "stringAttribute": "id is 1310731"}}, {"entity": {"collection_id": 7, "home": 2, "id": 4194315, "index": [47], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0015287639998859959}, {"id": 1, "time": 0.001481115000160571}, {"id": 2, "time": 0.001131489000044894}], "time": 0.004151404000140246, "attributes": {"intAttribute": 4194315, "doubleAttribute": 13170149.1, "elementIDAttribute": 30004194315, "stringAttribute": "id is 4194315"}}, {"entity": {"collection_id": 7, "home": 2, "id": 786443, "index": [34], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.288800012844149e-05}, {"id": 1, "time": 1.3568999975177576e-05}, {"id": 2, "time": 1.1438000001362525e-05}], "time": 3.923900021618465e-05, "attributes": {"intAttribute": 786443, "doubleAttribute": 2469431.02, "elementIDAttribute": 30000786443, "stringAttribute": "id is 786443"}}, {"entity": {"collection_id": 7, "home": 2, "id": 3670027, "index": [45], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0021605790000194247}, {"id": 1, "time": 0.001280844999882902}, {"id": 2, "time": 0.0010999390001416032}], "time": 0.004543551000097068, "attributes": {"intAttribute": 3670027, "doubleAttribute": 11523884.780000001, "elementIDAttribute": 30003670027, "stringAttribute": "id is 3670027"}}, {"entity": {"collection_id": 7, "home": 2, "id": 262155, "index": [32], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 5.667000004905276e-05}, {"id": 1, "time": 1.4399000065168366e-05}, {"id": 2, "time": 1.2021999964417773e-05}], "time": 8.558800004720979e-05, "attributes": {"intAttribute": 262155, "doubleAttribute": 823166.7000000001, "elementIDAttribute": 30000262155, "stringAttribute": "id is 262155"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1048587, "index": [35], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2546999869300635e-05}, {"id": 1, "time": 1.3046000049143913e-05}, {"id": 2, "time": 1.125199992202397e-05}], "time": 3.8879999692653655e-05, "attributes": {"intAttribute": 1048587, "doubleAttribute": 3292563.18, "elementIDAttribute": 30001048587, "stringAttribute": "id is 1048587"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1572875, "index": [37], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2516999959188979e-05}, {"id": 1, "time": 1.3035999927524244e-05}, {"id": 2, "time": 1.1486999937915243e-05}], "time": 3.8081999718997395e-05, "attributes": {"intAttribute": 1572875, "doubleAttribute": 4938827.5, "elementIDAttribute": 30001572875, "stringAttribute": "id is 1572875"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1835019, "index": [38], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2396000101944082e-05}, {"id": 1, "time": 1.350899992758059e-05}, {"id": 2, "time": 1.1347000054229284e-05}], "time": 3.855200020552729e-05, "attributes": {"intAttribute": 1835019, "doubleAttribute": 5761959.66, "elementIDAttribute": 30001835019, "stringAttribute": "id is 1835019"}}]}, {"communications": [{"bytes": 1472.0, "from": {"home": 2, "id": 9, "migratable": false, "type": "object"}, "messages": 23, "to": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 5, "tasks": [{"entity": {"collection_id": 7, "home": 2, "id": 3407883, "index": [44], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0011042319999887695}, {"id": 1, "time": 0.0012271949999558274}, {"id": 2, "time": 0.001306024999848887}], "time": 0.0036386769997989177, "attributes": {"intAttribute": 3407883, "doubleAttribute": 10700752.620000001, "elementIDAttribute": 30003407883, "stringAttribute": "id is 3407883"}}, {"entity": {"collection_id": 7, "home": 2, "id": 3145739, "index": [43], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0017526950000501529}, {"id": 1, "time": 0.0015114370000901545}, {"id": 2, "time": 0.0012944180000431516}], "time": 0.0045600950002153695, "attributes": {"intAttribute": 3145739, "doubleAttribute": 9877620.46, "elementIDAttribute": 30003145739, "stringAttribute": "id is 3145739"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2621451, "index": [41], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0013071299999865005}, {"id": 1, "time": 0.00117693600009261}, {"id": 2, "time": 0.0012974470000699512}], "time": 0.0037827200001174788, "attributes": {"intAttribute": 2621451, "doubleAttribute": 8231356.140000001, "elementIDAttribute": 30002621451, "stringAttribute": "id is 2621451"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2359307, "index": [40], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2086999959137756e-05}, {"id": 1, "time": 1.1276999885012629e-05}, {"id": 2, "time": 1.3556999874708708e-05}], "time": 3.7842999745407724e-05, "attributes": {"intAttribute": 2359307, "doubleAttribute": 7408223.98, "elementIDAttribute": 30002359307, "stringAttribute": "id is 2359307"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2097163, "index": [39], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.1987999869234045e-05}, {"id": 1, "time": 1.1323000080665224e-05}, {"id": 2, "time": 1.3302000070325448e-05}], "time": 3.85010000627517e-05, "attributes": {"intAttribute": 2097163, "doubleAttribute": 6585091.82, "elementIDAttribute": 30002097163, "stringAttribute": "id is 2097163"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2883595, "index": [42], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0014936600000510225}, {"id": 1, "time": 0.0010930629998711083}, {"id": 2, "time": 0.0013971890000448184}], "time": 0.004008167999927537, "attributes": {"intAttribute": 2883595, "doubleAttribute": 9054488.3, "elementIDAttribute": 30002883595, "stringAttribute": "id is 2883595"}}, {"entity": {"home": 2, "id": 9, "migratable": false, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.00011164199918312079}], "time": 0.00011164199918312079, "attributes": {"intAttribute": 9, "doubleAttribute": 28.26, "elementIDAttribute": 30000000009, "stringAttribute": "id is 9"}}, {"entity": {"collection_id": 7, "home": 2, "id": 3932171, "index": [46], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0019133900000269932}, {"id": 1, "time": 0.0010981319999245898}, {"id": 2, "time": 0.0013169940000352653}], "time": 0.004332400000066627, "attributes": {"intAttribute": 3932171, "doubleAttribute": 12347016.940000001, "elementIDAttribute": 30003932171, "stringAttribute": "id is 3932171"}}, {"entity": {"collection_id": 7, "home": 2, "id": 524299, "index": [33], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 3.096099999311264e-05}, {"id": 1, "time": 1.149900003838411e-05}, {"id": 2, "time": 1.3410000065050554e-05}], "time": 5.78050000967778e-05, "attributes": {"intAttribute": 524299, "doubleAttribute": 1646298.86, "elementIDAttribute": 30000524299, "stringAttribute": "id is 524299"}}, {"entity": {"home": 2, "id": 4194348, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 2, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194348, "doubleAttribute": 13170252.72, "elementIDAttribute": 30004194348, "stringAttribute": "id is 4194348"}}, {"entity": {"home": 2, "id": 3145772, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 3.7600000268867007e-06}], "time": 3.7600000268867007e-06, "attributes": {"intAttribute": 3145772, "doubleAttribute": 9877724.08, "elementIDAttribute": 30003145772, "stringAttribute": "id is 3145772"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1310731, "index": [36], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 3.12530000883271e-05}, {"id": 1, "time": 1.1377999953765539e-05}, {"id": 2, "time": 1.3241000033303862e-05}], "time": 5.755100028181914e-05, "attributes": {"intAttribute": 1310731, "doubleAttribute": 4115695.3400000003, "elementIDAttribute": 30001310731, "stringAttribute": "id is 1310731"}}, {"entity": {"collection_id": 7, "home": 2, "id": 4194315, "index": [47], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0019384160000299744}, {"id": 1, "time": 0.0013642979999985982}, {"id": 2, "time": 0.0013778479999473348}], "time": 0.004688371999918672, "attributes": {"intAttribute": 4194315, "doubleAttribute": 13170149.1, "elementIDAttribute": 30004194315, "stringAttribute": "id is 4194315"}}, {"entity": {"collection_id": 7, "home": 2, "id": 786443, "index": [34], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 3.686399986690958e-05}, {"id": 1, "time": 1.1573000165299163e-05}, {"id": 2, "time": 1.3238999827080988e-05}], "time": 6.3245999854189e-05, "attributes": {"intAttribute": 786443, "doubleAttribute": 2469431.02, "elementIDAttribute": 30000786443, "stringAttribute": "id is 786443"}}, {"entity": {"collection_id": 7, "home": 2, "id": 3670027, "index": [45], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.00201878999996552}, {"id": 1, "time": 0.0012401880001107202}, {"id": 2, "time": 0.0013053449999915756}], "time": 0.0045661760000257345, "attributes": {"intAttribute": 3670027, "doubleAttribute": 11523884.780000001, "elementIDAttribute": 30003670027, "stringAttribute": "id is 3670027"}}, {"entity": {"collection_id": 7, "home": 2, "id": 262155, "index": [32], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 4.708400001618429e-05}, {"id": 1, "time": 1.1860999848067877e-05}, {"id": 2, "time": 1.5713000038886094e-05}], "time": 7.679699979235011e-05, "attributes": {"intAttribute": 262155, "doubleAttribute": 823166.7000000001, "elementIDAttribute": 30000262155, "stringAttribute": "id is 262155"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1048587, "index": [35], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2142000059611746e-05}, {"id": 1, "time": 1.1330999996062019e-05}, {"id": 2, "time": 1.3340000123207574e-05}], "time": 6.102300017118978e-05, "attributes": {"intAttribute": 1048587, "doubleAttribute": 3292563.18, "elementIDAttribute": 30001048587, "stringAttribute": "id is 1048587"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1572875, "index": [37], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.15159998586023e-05}, {"id": 1, "time": 1.1330999996062019e-05}, {"id": 2, "time": 1.3372000012168428e-05}], "time": 3.7381999845820246e-05, "attributes": {"intAttribute": 1572875, "doubleAttribute": 4938827.5, "elementIDAttribute": 30001572875, "stringAttribute": "id is 1572875"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1835019, "index": [38], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 3.777800020543509e-05}, {"id": 1, "time": 1.1270999948465033e-05}, {"id": 2, "time": 1.3295999906404177e-05}], "time": 6.339399988064542e-05, "attributes": {"intAttribute": 1835019, "doubleAttribute": 5761959.66, "elementIDAttribute": 30001835019, "stringAttribute": "id is 1835019"}}]}, {"communications": [{"bytes": 1664.0, "from": {"home": 2, "id": 9, "migratable": false, "type": "object"}, "messages": 26, "to": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 6, "tasks": [{"entity": {"collection_id": 7, "home": 2, "id": 3407883, "index": [44], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.00159877700002653}, {"id": 1, "time": 0.0011029400000097667}, {"id": 2, "time": 0.0011009870001998934}], "time": 0.0038037590002204524, "attributes": {"intAttribute": 3407883, "doubleAttribute": 10700752.620000001, "elementIDAttribute": 30003407883, "stringAttribute": "id is 3407883"}}, {"entity": {"collection_id": 7, "home": 2, "id": 3145739, "index": [43], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001258141000107571}, {"id": 1, "time": 0.0011648800000330084}, {"id": 2, "time": 0.0010975359998610656}], "time": 0.00352202999988549, "attributes": {"intAttribute": 3145739, "doubleAttribute": 9877620.46, "elementIDAttribute": 30003145739, "stringAttribute": "id is 3145739"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2621451, "index": [41], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001484088999859523}, {"id": 1, "time": 0.0013458000000809989}, {"id": 2, "time": 0.0010968859999138658}], "time": 0.003927905999717041, "attributes": {"intAttribute": 2621451, "doubleAttribute": 8231356.140000001, "elementIDAttribute": 30002621451, "stringAttribute": "id is 2621451"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2359307, "index": [40], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2194999953862862e-05}, {"id": 1, "time": 1.1252999911448569e-05}, {"id": 2, "time": 1.1309999990771757e-05}], "time": 3.589399989323283e-05, "attributes": {"intAttribute": 2359307, "doubleAttribute": 7408223.98, "elementIDAttribute": 30002359307, "stringAttribute": "id is 2359307"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2097163, "index": [39], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2061999996149098e-05}, {"id": 1, "time": 1.1358999927324476e-05}, {"id": 2, "time": 1.1508999932630104e-05}], "time": 3.693999997267383e-05, "attributes": {"intAttribute": 2097163, "doubleAttribute": 6585091.82, "elementIDAttribute": 30002097163, "stringAttribute": "id is 2097163"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2883595, "index": [42], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.00227006000000074}, {"id": 1, "time": 0.0012654279998969287}, {"id": 2, "time": 0.0010988460001044587}], "time": 0.004635931000166238, "attributes": {"intAttribute": 2883595, "doubleAttribute": 9054488.3, "elementIDAttribute": 30002883595, "stringAttribute": "id is 2883595"}}, {"entity": {"home": 2, "id": 9, "migratable": false, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0001108570002088527}], "time": 0.0001108570002088527, "attributes": {"intAttribute": 9, "doubleAttribute": 28.26, "elementIDAttribute": 30000000009, "stringAttribute": "id is 9"}}, {"entity": {"collection_id": 7, "home": 2, "id": 3932171, "index": [46], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.00167955200004144}, {"id": 1, "time": 0.0011028129999886005}, {"id": 2, "time": 0.001104961999999432}], "time": 0.003891329999987647, "attributes": {"intAttribute": 3932171, "doubleAttribute": 12347016.940000001, "elementIDAttribute": 30003932171, "stringAttribute": "id is 3932171"}}, {"entity": {"collection_id": 7, "home": 2, "id": 524299, "index": [33], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2380000043776818e-05}, {"id": 1, "time": 1.1793000112447771e-05}, {"id": 2, "time": 1.1605000054260017e-05}], "time": 3.7454000221259776e-05, "attributes": {"intAttribute": 524299, "doubleAttribute": 1646298.86, "elementIDAttribute": 30000524299, "stringAttribute": "id is 524299"}}, {"entity": {"home": 2, "id": 4194348, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 2, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194348, "doubleAttribute": 13170252.72, "elementIDAttribute": 30004194348, "stringAttribute": "id is 4194348"}}, {"entity": {"home": 2, "id": 3145772, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 3.656000217233668e-06}], "time": 3.656000217233668e-06, "attributes": {"intAttribute": 3145772, "doubleAttribute": 9877724.08, "elementIDAttribute": 30003145772, "stringAttribute": "id is 3145772"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1310731, "index": [36], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2202000107208733e-05}, {"id": 1, "time": 1.1183999959030189e-05}, {"id": 2, "time": 1.1232999895582907e-05}], "time": 3.605499978220905e-05, "attributes": {"intAttribute": 1310731, "doubleAttribute": 4115695.3400000003, "elementIDAttribute": 30001310731, "stringAttribute": "id is 1310731"}}, {"entity": {"collection_id": 7, "home": 2, "id": 4194315, "index": [47], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0016114170000491868}, {"id": 1, "time": 0.0011641890000646526}, {"id": 2, "time": 0.0017020210000282532}], "time": 0.004485296000211747, "attributes": {"intAttribute": 4194315, "doubleAttribute": 13170149.1, "elementIDAttribute": 30004194315, "stringAttribute": "id is 4194315"}}, {"entity": {"collection_id": 7, "home": 2, "id": 786443, "index": [34], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2747000027957256e-05}, {"id": 1, "time": 1.1497999821585836e-05}, {"id": 2, "time": 1.1700999948516255e-05}], "time": 3.7408999787658104e-05, "attributes": {"intAttribute": 786443, "doubleAttribute": 2469431.02, "elementIDAttribute": 30000786443, "stringAttribute": "id is 786443"}}, {"entity": {"collection_id": 7, "home": 2, "id": 3670027, "index": [45], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0017041139999491861}, {"id": 1, "time": 0.0011450839999724849}, {"id": 2, "time": 0.001100209000014729}], "time": 0.003951394000068831, "attributes": {"intAttribute": 3670027, "doubleAttribute": 11523884.780000001, "elementIDAttribute": 30003670027, "stringAttribute": "id is 3670027"}}, {"entity": {"collection_id": 7, "home": 2, "id": 262155, "index": [32], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 3.600099989853334e-05}, {"id": 1, "time": 3.235799999856681e-05}, {"id": 2, "time": 1.2132999927416677e-05}], "time": 8.258799971372355e-05, "attributes": {"intAttribute": 262155, "doubleAttribute": 823166.7000000001, "elementIDAttribute": 30000262155, "stringAttribute": "id is 262155"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1048587, "index": [35], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2083000001439359e-05}, {"id": 1, "time": 1.1199000027772854e-05}, {"id": 2, "time": 1.11680001282366e-05}], "time": 3.5856000295098056e-05, "attributes": {"intAttribute": 1048587, "doubleAttribute": 3292563.18, "elementIDAttribute": 30001048587, "stringAttribute": "id is 1048587"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1572875, "index": [37], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2037999795211363e-05}, {"id": 1, "time": 1.1169000117661199e-05}, {"id": 2, "time": 1.1233000122956582e-05}], "time": 3.5827000147037324e-05, "attributes": {"intAttribute": 1572875, "doubleAttribute": 4938827.5, "elementIDAttribute": 30001572875, "stringAttribute": "id is 1572875"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1835019, "index": [38], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.2107000202377094e-05}, {"id": 1, "time": 1.1366000080670347e-05}, {"id": 2, "time": 1.1349000033078482e-05}], "time": 3.5972000205219956e-05, "attributes": {"intAttribute": 1835019, "doubleAttribute": 5761959.66, "elementIDAttribute": 30001835019, "stringAttribute": "id is 1835019"}}]}, {"communications": [{"bytes": 1408.0, "from": {"home": 2, "id": 9, "migratable": false, "type": "object"}, "messages": 22, "to": {"home": 0, "id": 1, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 7, "tasks": [{"entity": {"collection_id": 7, "home": 2, "id": 3407883, "index": [44], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0013786399999844434}, {"id": 1, "time": 0.0012839799999255774}, {"id": 2, "time": 0.001120182000022396}], "time": 0.0037840729999061296, "attributes": {"intAttribute": 3407883, "doubleAttribute": 10700752.620000001, "elementIDAttribute": 30003407883, "stringAttribute": "id is 3407883"}}, {"entity": {"collection_id": 7, "home": 2, "id": 3145739, "index": [43], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0013125590000981902}, {"id": 1, "time": 0.0012551580000490503}, {"id": 2, "time": 0.0010972669999773643}], "time": 0.003666627000029621, "attributes": {"intAttribute": 3145739, "doubleAttribute": 9877620.46, "elementIDAttribute": 30003145739, "stringAttribute": "id is 3145739"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2621451, "index": [41], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012993190000543109}, {"id": 1, "time": 0.0012825620001422067}, {"id": 2, "time": 0.0010979699998188153}], "time": 0.0036814329998833273, "attributes": {"intAttribute": 2621451, "doubleAttribute": 8231356.140000001, "elementIDAttribute": 30002621451, "stringAttribute": "id is 2621451"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2359307, "index": [40], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3308000006873044e-05}, {"id": 1, "time": 1.3769999895885121e-05}, {"id": 2, "time": 1.1414000027798465e-05}], "time": 3.989400011050748e-05, "attributes": {"intAttribute": 2359307, "doubleAttribute": 7408223.98, "elementIDAttribute": 30002359307, "stringAttribute": "id is 2359307"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2097163, "index": [39], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.324400000157766e-05}, {"id": 1, "time": 1.3776000059806393e-05}, {"id": 2, "time": 1.1251000159973046e-05}], "time": 4.0601000137030496e-05, "attributes": {"intAttribute": 2097163, "doubleAttribute": 6585091.82, "elementIDAttribute": 30002097163, "stringAttribute": "id is 2097163"}}, {"entity": {"collection_id": 7, "home": 2, "id": 2883595, "index": [42], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0013372389998949075}, {"id": 1, "time": 0.0013068389998807106}, {"id": 2, "time": 0.0010972040001888672}], "time": 0.003743425000038769, "attributes": {"intAttribute": 2883595, "doubleAttribute": 9054488.3, "elementIDAttribute": 30002883595, "stringAttribute": "id is 2883595"}}, {"entity": {"home": 2, "id": 9, "migratable": false, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.00015256699953170028}], "time": 0.00015256699953170028, "attributes": {"intAttribute": 9, "doubleAttribute": 28.26, "elementIDAttribute": 30000000009, "stringAttribute": "id is 9"}}, {"entity": {"collection_id": 7, "home": 2, "id": 3932171, "index": [46], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0018601099998249992}, {"id": 1, "time": 0.0013350900001114496}, {"id": 2, "time": 0.0015415240000038466}], "time": 0.004741409999951429, "attributes": {"intAttribute": 3932171, "doubleAttribute": 12347016.940000001, "elementIDAttribute": 30003932171, "stringAttribute": "id is 3932171"}}, {"entity": {"collection_id": 7, "home": 2, "id": 524299, "index": [33], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3225999964561197e-05}, {"id": 1, "time": 1.3661000139109092e-05}, {"id": 2, "time": 1.1406999874452595e-05}], "time": 4.019299990432046e-05, "attributes": {"intAttribute": 524299, "doubleAttribute": 1646298.86, "elementIDAttribute": 30000524299, "stringAttribute": "id is 524299"}}, {"entity": {"home": 2, "id": 4194348, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 2, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194348, "doubleAttribute": 13170252.72, "elementIDAttribute": 30004194348, "stringAttribute": "id is 4194348"}}, {"entity": {"home": 2, "id": 3145772, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 3.776099993046955e-05}], "time": 3.776099993046955e-05, "attributes": {"intAttribute": 3145772, "doubleAttribute": 9877724.08, "elementIDAttribute": 30003145772, "stringAttribute": "id is 3145772"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1310731, "index": [36], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3301000080900849e-05}, {"id": 1, "time": 1.3634999959322158e-05}, {"id": 2, "time": 1.1365000091245747e-05}], "time": 3.9678000121057266e-05, "attributes": {"intAttribute": 1310731, "doubleAttribute": 4115695.3400000003, "elementIDAttribute": 30001310731, "stringAttribute": "id is 1310731"}}, {"entity": {"collection_id": 7, "home": 2, "id": 4194315, "index": [47], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0018835570001556334}, {"id": 1, "time": 0.0013236449999567412}, {"id": 2, "time": 0.0011857049998980074}], "time": 0.004401559000143607, "attributes": {"intAttribute": 4194315, "doubleAttribute": 13170149.1, "elementIDAttribute": 30004194315, "stringAttribute": "id is 4194315"}}, {"entity": {"collection_id": 7, "home": 2, "id": 786443, "index": [34], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3356999943425762e-05}, {"id": 1, "time": 1.3649000038640224e-05}, {"id": 2, "time": 1.1289999974906095e-05}], "time": 4.058500007886323e-05, "attributes": {"intAttribute": 786443, "doubleAttribute": 2469431.02, "elementIDAttribute": 30000786443, "stringAttribute": "id is 786443"}}, {"entity": {"collection_id": 7, "home": 2, "id": 3670027, "index": [45], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0014786300000650954}, {"id": 1, "time": 0.001288088999899628}, {"id": 2, "time": 0.0012453870001536416}], "time": 0.0040141209999546845, "attributes": {"intAttribute": 3670027, "doubleAttribute": 11523884.780000001, "elementIDAttribute": 30003670027, "stringAttribute": "id is 3670027"}}, {"entity": {"collection_id": 7, "home": 2, "id": 262155, "index": [32], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.506700004938466e-05}, {"id": 1, "time": 1.4304999922387651e-05}, {"id": 2, "time": 1.2775999948644312e-05}], "time": 4.499800002122356e-05, "attributes": {"intAttribute": 262155, "doubleAttribute": 823166.7000000001, "elementIDAttribute": 30000262155, "stringAttribute": "id is 262155"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1048587, "index": [35], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.343899998573761e-05}, {"id": 1, "time": 1.8223999859401374e-05}, {"id": 2, "time": 1.1365000091245747e-05}], "time": 4.490899982556584e-05, "attributes": {"intAttribute": 1048587, "doubleAttribute": 3292563.18, "elementIDAttribute": 30001048587, "stringAttribute": "id is 1048587"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1572875, "index": [37], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3296999895828776e-05}, {"id": 1, "time": 1.3431000070340815e-05}, {"id": 2, "time": 1.1277999874437228e-05}], "time": 3.9035999861880555e-05, "attributes": {"intAttribute": 1572875, "doubleAttribute": 4938827.5, "elementIDAttribute": 30001572875, "stringAttribute": "id is 1572875"}}, {"entity": {"collection_id": 7, "home": 2, "id": 1835019, "index": [38], "migratable": true, "type": "object"}, "node": 2, "resource": "cpu", "subphases": [{"id": 0, "time": 1.3427000112642418e-05}, {"id": 1, "time": 1.3523000006898656e-05}, {"id": 2, "time": 1.1355999959050678e-05}], "time": 3.996000009465206e-05, "attributes": {"intAttribute": 1835019, "doubleAttribute": 5761959.66, "elementIDAttribute": 30001835019, "stringAttribute": "id is 1835019"}}]}]} \ No newline at end of file diff --git a/tests/unit/synthetic_attributes/data.2.json.br b/tests/unit/synthetic_attributes/data.2.json.br new file mode 100644 index 0000000000..a0e42b4d16 Binary files /dev/null and b/tests/unit/synthetic_attributes/data.2.json.br differ diff --git a/tests/unit/synthetic_attributes/data.3.json b/tests/unit/synthetic_attributes/data.3.json new file mode 100644 index 0000000000..dded9dc415 --- /dev/null +++ b/tests/unit/synthetic_attributes/data.3.json @@ -0,0 +1 @@ +{"metadata": {"rank": 3, "shared_node": {"id": 0, "num_nodes": 1, "rank": 3, "size": 4}, "type": "LBDatafile", "attributes": {"intAttribute": 3, "doubleAttribute": 9.42, "elementIDAttribute": 30000000003, "stringAttribute": "id is 3"}}, "phases": [{"communications": [{"bytes": 112.0, "from": {"home": 0, "id": 0, "migratable": false, "type": "object"}, "messages": 2, "to": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "type": "SendRecv"}, {"bytes": 1280.0, "from": {"home": 3, "id": 13, "migratable": false, "type": "object"}, "messages": 18, "to": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 0, "tasks": [{"entity": {"collection_id": 7, "home": 3, "id": 3407887, "index": [60], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0018593130000681413}, {"id": 1, "time": 0.0011459969998668385}, {"id": 2, "time": 0.001234070000009524}], "time": 0.004239379999944504, "attributes": {"intAttribute": 3407887, "doubleAttribute": 10700765.18, "elementIDAttribute": 30003407887, "stringAttribute": "id is 3407887"}}, {"entity": {"collection_id": 7, "home": 3, "id": 3145743, "index": [59], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0018266300000959745}, {"id": 1, "time": 0.0010979520000091725}, {"id": 2, "time": 0.0013446879997900396}], "time": 0.004269269999895187, "attributes": {"intAttribute": 3145743, "doubleAttribute": 9877633.02, "elementIDAttribute": 30003145743, "stringAttribute": "id is 3145743"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2621455, "index": [57], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001673245000120005}, {"id": 1, "time": 0.00143710700012889}, {"id": 2, "time": 0.0017905769998378673}], "time": 0.004900929000086762, "attributes": {"intAttribute": 2621455, "doubleAttribute": 8231368.7, "elementIDAttribute": 30002621455, "stringAttribute": "id is 2621455"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2359311, "index": [56], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0015064009999150585}, {"id": 1, "time": 0.0018539759998930094}, {"id": 2, "time": 0.00169977700011259}], "time": 0.005060153999920658, "attributes": {"intAttribute": 2359311, "doubleAttribute": 7408236.54, "elementIDAttribute": 30002359311, "stringAttribute": "id is 2359311"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2097167, "index": [55], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0017636780000884755}, {"id": 1, "time": 0.0017617420000988204}, {"id": 2, "time": 0.0019757759998810798}], "time": 0.005501196000068376, "attributes": {"intAttribute": 2097167, "doubleAttribute": 6585104.38, "elementIDAttribute": 30002097167, "stringAttribute": "id is 2097167"}}, {"entity": {"collection_id": 7, "home": 3, "id": 524303, "index": [49], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0011733730000287323}, {"id": 1, "time": 0.0013756910000211064}, {"id": 2, "time": 0.0011021400000572612}], "time": 0.0036512040001071, "attributes": {"intAttribute": 524303, "doubleAttribute": 1646311.4200000002, "elementIDAttribute": 30000524303, "stringAttribute": "id is 524303"}}, {"entity": {"collection_id": 7, "home": 3, "id": 3932175, "index": [62], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0011910440000519884}, {"id": 1, "time": 0.0011029479999251635}, {"id": 2, "time": 0.0011877260001256218}], "time": 0.0034817180001027737, "attributes": {"intAttribute": 3932175, "doubleAttribute": 12347029.5, "elementIDAttribute": 30003932175, "stringAttribute": "id is 3932175"}}, {"entity": {"home": 3, "id": 4194364, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 3, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194364, "doubleAttribute": 13170302.96, "elementIDAttribute": 30004194364, "stringAttribute": "id is 4194364"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2883599, "index": [58], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0013502519998382922}, {"id": 1, "time": 0.001474751999921864}, {"id": 2, "time": 0.0012159280001924344}], "time": 0.0040409319999525906, "attributes": {"intAttribute": 2883599, "doubleAttribute": 9054500.860000001, "elementIDAttribute": 30002883599, "stringAttribute": "id is 2883599"}}, {"entity": {"home": 3, "id": 13, "migratable": false, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0001245109995124949}], "time": 0.0001245109995124949, "attributes": {"intAttribute": 13, "doubleAttribute": 40.82, "elementIDAttribute": 30000000013, "stringAttribute": "id is 13"}}, {"entity": {"home": 3, "id": 3145788, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 3, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 3145788, "doubleAttribute": 9877774.32, "elementIDAttribute": 30003145788, "stringAttribute": "id is 3145788"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1572879, "index": [53], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012574840000070253}, {"id": 1, "time": 0.0011487799999940762}, {"id": 2, "time": 0.001097207000157141}], "time": 0.0035034710001582425, "attributes": {"intAttribute": 1572879, "doubleAttribute": 4938840.0600000005, "elementIDAttribute": 30001572879, "stringAttribute": "id is 1572879"}}, {"entity": {"collection_id": 7, "home": 3, "id": 4194319, "index": [63], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012008930000320106}, {"id": 1, "time": 0.0011224970000967005}, {"id": 2, "time": 0.0011148290000164707}], "time": 0.0034382190001451818, "attributes": {"intAttribute": 4194319, "doubleAttribute": 13170161.66, "elementIDAttribute": 30004194319, "stringAttribute": "id is 4194319"}}, {"entity": {"collection_id": 7, "home": 3, "id": 786447, "index": [50], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0017688670000097773}, {"id": 1, "time": 0.0010973820001254353}, {"id": 2, "time": 0.0011106419999578065}], "time": 0.003976891000093019, "attributes": {"intAttribute": 786447, "doubleAttribute": 2469443.58, "elementIDAttribute": 30000786447, "stringAttribute": "id is 786447"}}, {"entity": {"collection_id": 7, "home": 3, "id": 3670031, "index": [61], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012180310000076133}, {"id": 1, "time": 0.0012181479999071598}, {"id": 2, "time": 0.001183980999940104}], "time": 0.0036201599998548772, "attributes": {"intAttribute": 3670031, "doubleAttribute": 11523897.34, "elementIDAttribute": 30003670031, "stringAttribute": "id is 3670031"}}, {"entity": {"collection_id": 7, "home": 3, "id": 262159, "index": [48], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0013442869999380491}, {"id": 1, "time": 0.0011474210000415042}, {"id": 2, "time": 0.001112665999926321}], "time": 0.0036043739999058744, "attributes": {"intAttribute": 262159, "doubleAttribute": 823179.26, "elementIDAttribute": 30000262159, "stringAttribute": "id is 262159"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1048591, "index": [51], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0015565030000743718}, {"id": 1, "time": 0.0010995959999036131}, {"id": 2, "time": 0.001097077000167701}], "time": 0.003753176000145686, "attributes": {"intAttribute": 1048591, "doubleAttribute": 3292575.74, "elementIDAttribute": 30001048591, "stringAttribute": "id is 1048591"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1310735, "index": [52], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012924299999212963}, {"id": 1, "time": 0.0010973939999985305}, {"id": 2, "time": 0.0010974949998399097}], "time": 0.0034873189997597365, "attributes": {"intAttribute": 1310735, "doubleAttribute": 4115707.9000000004, "elementIDAttribute": 30001310735, "stringAttribute": "id is 1310735"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1835023, "index": [54], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012385899999571848}, {"id": 1, "time": 0.0011451249999936408}, {"id": 2, "time": 0.0013564519999818003}], "time": 0.003740166999932626, "attributes": {"intAttribute": 1835023, "doubleAttribute": 5761972.220000001, "elementIDAttribute": 30001835023, "stringAttribute": "id is 1835023"}}]}, {"communications": [{"bytes": 1664.0, "from": {"home": 3, "id": 13, "migratable": false, "type": "object"}, "messages": 26, "to": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 1, "tasks": [{"entity": {"collection_id": 7, "home": 3, "id": 3407887, "index": [60], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001313423000055991}, {"id": 1, "time": 0.0012541910000436474}, {"id": 2, "time": 0.0016980249999960506}], "time": 0.004266806000032375, "attributes": {"intAttribute": 3407887, "doubleAttribute": 10700765.18, "elementIDAttribute": 30003407887, "stringAttribute": "id is 3407887"}}, {"entity": {"collection_id": 7, "home": 3, "id": 3145743, "index": [59], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001468798000132665}, {"id": 1, "time": 0.0012865529999999126}, {"id": 2, "time": 0.0012553340000067692}], "time": 0.0040119890002188185, "attributes": {"intAttribute": 3145743, "doubleAttribute": 9877633.02, "elementIDAttribute": 30003145743, "stringAttribute": "id is 3145743"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2621455, "index": [57], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001279208999903858}, {"id": 1, "time": 0.0012472230000639684}, {"id": 2, "time": 0.0014869280000766594}], "time": 0.004014591999975892, "attributes": {"intAttribute": 2621455, "doubleAttribute": 8231368.7, "elementIDAttribute": 30002621455, "stringAttribute": "id is 2621455"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2359311, "index": [56], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0013222720001522248}, {"id": 1, "time": 0.0012515290000010282}, {"id": 2, "time": 0.0017453220000334113}], "time": 0.0043204090002291196, "attributes": {"intAttribute": 2359311, "doubleAttribute": 7408236.54, "elementIDAttribute": 30002359311, "stringAttribute": "id is 2359311"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2097167, "index": [55], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0015172169999004836}, {"id": 1, "time": 0.0014398029998119455}, {"id": 2, "time": 0.002087135000010676}], "time": 0.005047639999702369, "attributes": {"intAttribute": 2097167, "doubleAttribute": 6585104.38, "elementIDAttribute": 30002097167, "stringAttribute": "id is 2097167"}}, {"entity": {"collection_id": 7, "home": 3, "id": 524303, "index": [49], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001256732000001648}, {"id": 1, "time": 0.0013141409999661846}, {"id": 2, "time": 0.0011167059999479534}], "time": 0.003688927999974112, "attributes": {"intAttribute": 524303, "doubleAttribute": 1646311.4200000002, "elementIDAttribute": 30000524303, "stringAttribute": "id is 524303"}}, {"entity": {"collection_id": 7, "home": 3, "id": 3932175, "index": [62], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0013765809999313205}, {"id": 1, "time": 0.0012875300001269352}, {"id": 2, "time": 0.001150894999909724}], "time": 0.003818676000037158, "attributes": {"intAttribute": 3932175, "doubleAttribute": 12347029.5, "elementIDAttribute": 30003932175, "stringAttribute": "id is 3932175"}}, {"entity": {"home": 3, "id": 4194364, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 3, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194364, "doubleAttribute": 13170302.96, "elementIDAttribute": 30004194364, "stringAttribute": "id is 4194364"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2883599, "index": [58], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001333903999920949}, {"id": 1, "time": 0.0012553930000649416}, {"id": 2, "time": 0.001217413999938799}], "time": 0.003810774999919886, "attributes": {"intAttribute": 2883599, "doubleAttribute": 9054500.860000001, "elementIDAttribute": 30002883599, "stringAttribute": "id is 2883599"}}, {"entity": {"home": 3, "id": 13, "migratable": false, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.00012965999985681265}], "time": 0.00012965999985681265, "attributes": {"intAttribute": 13, "doubleAttribute": 40.82, "elementIDAttribute": 30000000013, "stringAttribute": "id is 13"}}, {"entity": {"home": 3, "id": 3145788, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 8.620000016890117e-06}], "time": 8.620000016890117e-06, "attributes": {"intAttribute": 3145788, "doubleAttribute": 9877774.32, "elementIDAttribute": 30003145788, "stringAttribute": "id is 3145788"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1572879, "index": [53], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001270434999923964}, {"id": 1, "time": 0.001424145000100907}, {"id": 2, "time": 0.001113077000127305}], "time": 0.0038088010001047223, "attributes": {"intAttribute": 1572879, "doubleAttribute": 4938840.0600000005, "elementIDAttribute": 30001572879, "stringAttribute": "id is 1572879"}}, {"entity": {"collection_id": 7, "home": 3, "id": 4194319, "index": [63], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0014897640000981482}, {"id": 1, "time": 0.00131017199987582}, {"id": 2, "time": 0.0011154999999689608}], "time": 0.003961262999837345, "attributes": {"intAttribute": 4194319, "doubleAttribute": 13170161.66, "elementIDAttribute": 30004194319, "stringAttribute": "id is 4194319"}}, {"entity": {"collection_id": 7, "home": 3, "id": 786447, "index": [50], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012487739998050529}, {"id": 1, "time": 0.0014046620001408883}, {"id": 2, "time": 0.0010975820000567182}], "time": 0.0037529349999658734, "attributes": {"intAttribute": 786447, "doubleAttribute": 2469443.58, "elementIDAttribute": 30000786447, "stringAttribute": "id is 786447"}}, {"entity": {"collection_id": 7, "home": 3, "id": 3670031, "index": [61], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012152389999755542}, {"id": 1, "time": 0.0013341530000161583}, {"id": 2, "time": 0.0014822640000602405}], "time": 0.004037841000126718, "attributes": {"intAttribute": 3670031, "doubleAttribute": 11523897.34, "elementIDAttribute": 30003670031, "stringAttribute": "id is 3670031"}}, {"entity": {"collection_id": 7, "home": 3, "id": 262159, "index": [48], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012871370001903415}, {"id": 1, "time": 0.001307785999870248}, {"id": 2, "time": 0.001102268000067852}], "time": 0.0036990769999647455, "attributes": {"intAttribute": 262159, "doubleAttribute": 823179.26, "elementIDAttribute": 30000262159, "stringAttribute": "id is 262159"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1048591, "index": [51], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0013021320000916603}, {"id": 1, "time": 0.001314488999923924}, {"id": 2, "time": 0.0012666879999869707}], "time": 0.0038865060000716767, "attributes": {"intAttribute": 1048591, "doubleAttribute": 3292575.74, "elementIDAttribute": 30001048591, "stringAttribute": "id is 1048591"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1310735, "index": [52], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0014096810000410187}, {"id": 1, "time": 0.0013956259999758913}, {"id": 2, "time": 0.0010975339998822164}], "time": 0.0039041039999574423, "attributes": {"intAttribute": 1310735, "doubleAttribute": 4115707.9000000004, "elementIDAttribute": 30001310735, "stringAttribute": "id is 1310735"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1835023, "index": [54], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0013010800000756717}, {"id": 1, "time": 0.0012623390000499057}, {"id": 2, "time": 0.0010996019998401607}], "time": 0.003664117999960581, "attributes": {"intAttribute": 1835023, "doubleAttribute": 5761972.220000001, "elementIDAttribute": 30001835023, "stringAttribute": "id is 1835023"}}]}, {"communications": [{"bytes": 1600.0, "from": {"home": 3, "id": 13, "migratable": false, "type": "object"}, "messages": 25, "to": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 2, "tasks": [{"entity": {"collection_id": 7, "home": 3, "id": 3407887, "index": [60], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001647910999963642}, {"id": 1, "time": 0.0011570750000373664}, {"id": 2, "time": 0.0011003269999037002}], "time": 0.00390653099998417, "attributes": {"intAttribute": 3407887, "doubleAttribute": 10700765.18, "elementIDAttribute": 30003407887, "stringAttribute": "id is 3407887"}}, {"entity": {"collection_id": 7, "home": 3, "id": 3145743, "index": [59], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0011951039998621127}, {"id": 1, "time": 0.0011954799999784882}, {"id": 2, "time": 0.001097053999956188}], "time": 0.003489359999775843, "attributes": {"intAttribute": 3145743, "doubleAttribute": 9877633.02, "elementIDAttribute": 30003145743, "stringAttribute": "id is 3145743"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2621455, "index": [57], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001698949999990873}, {"id": 1, "time": 0.001326875999893673}, {"id": 2, "time": 0.0017848610000328335}], "time": 0.004813366999997015, "attributes": {"intAttribute": 2621455, "doubleAttribute": 8231368.7, "elementIDAttribute": 30002621455, "stringAttribute": "id is 2621455"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2359311, "index": [56], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001458482000089134}, {"id": 1, "time": 0.00132202400004644}, {"id": 2, "time": 0.0014537989998189005}], "time": 0.0042459659998712596, "attributes": {"intAttribute": 2359311, "doubleAttribute": 7408236.54, "elementIDAttribute": 30002359311, "stringAttribute": "id is 2359311"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2097167, "index": [55], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0014775360000385263}, {"id": 1, "time": 0.0012853499999891937}, {"id": 2, "time": 0.0015285470001344947}], "time": 0.004293181000321056, "attributes": {"intAttribute": 2097167, "doubleAttribute": 6585104.38, "elementIDAttribute": 30002097167, "stringAttribute": "id is 2097167"}}, {"entity": {"collection_id": 7, "home": 3, "id": 524303, "index": [49], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0017670100000941602}, {"id": 1, "time": 0.0012584230000811658}, {"id": 2, "time": 0.0011102389998995932}], "time": 0.00413737800022318, "attributes": {"intAttribute": 524303, "doubleAttribute": 1646311.4200000002, "elementIDAttribute": 30000524303, "stringAttribute": "id is 524303"}}, {"entity": {"collection_id": 7, "home": 3, "id": 3932175, "index": [62], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0019625699999323842}, {"id": 1, "time": 0.0012462419999792473}, {"id": 2, "time": 0.0012375470000733912}], "time": 0.004450184999996054, "attributes": {"intAttribute": 3932175, "doubleAttribute": 12347029.5, "elementIDAttribute": 30003932175, "stringAttribute": "id is 3932175"}}, {"entity": {"home": 3, "id": 4194364, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 3, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194364, "doubleAttribute": 13170302.96, "elementIDAttribute": 30004194364, "stringAttribute": "id is 4194364"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2883599, "index": [58], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012973620000593655}, {"id": 1, "time": 0.0012849060001371981}, {"id": 2, "time": 0.0011378030001196748}], "time": 0.003721730000279422, "attributes": {"intAttribute": 2883599, "doubleAttribute": 9054500.860000001, "elementIDAttribute": 30002883599, "stringAttribute": "id is 2883599"}}, {"entity": {"home": 3, "id": 13, "migratable": false, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.00012937799920109683}], "time": 0.00012937799920109683, "attributes": {"intAttribute": 13, "doubleAttribute": 40.82, "elementIDAttribute": 30000000013, "stringAttribute": "id is 13"}}, {"entity": {"home": 3, "id": 3145788, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 2.6858999945034157e-05}], "time": 2.6858999945034157e-05, "attributes": {"intAttribute": 3145788, "doubleAttribute": 9877774.32, "elementIDAttribute": 30003145788, "stringAttribute": "id is 3145788"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1572879, "index": [53], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001170761999901515}, {"id": 1, "time": 0.0012163809999492514}, {"id": 2, "time": 0.0010962320000089676}], "time": 0.0034852080000291608, "attributes": {"intAttribute": 1572879, "doubleAttribute": 4938840.0600000005, "elementIDAttribute": 30001572879, "stringAttribute": "id is 1572879"}}, {"entity": {"collection_id": 7, "home": 3, "id": 4194319, "index": [63], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0015753850000237435}, {"id": 1, "time": 0.0012708540000403445}, {"id": 2, "time": 0.0011127059999580524}], "time": 0.003968038000039087, "attributes": {"intAttribute": 4194319, "doubleAttribute": 13170161.66, "elementIDAttribute": 30004194319, "stringAttribute": "id is 4194319"}}, {"entity": {"collection_id": 7, "home": 3, "id": 786447, "index": [50], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012518359999376116}, {"id": 1, "time": 0.001262076000102752}, {"id": 2, "time": 0.0011136200000692043}], "time": 0.0036292280001362087, "attributes": {"intAttribute": 786447, "doubleAttribute": 2469443.58, "elementIDAttribute": 30000786447, "stringAttribute": "id is 786447"}}, {"entity": {"collection_id": 7, "home": 3, "id": 3670031, "index": [61], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0014579720000256202}, {"id": 1, "time": 0.0012594849999914004}, {"id": 2, "time": 0.0011443999999301013}], "time": 0.0038641119999738294, "attributes": {"intAttribute": 3670031, "doubleAttribute": 11523897.34, "elementIDAttribute": 30003670031, "stringAttribute": "id is 3670031"}}, {"entity": {"collection_id": 7, "home": 3, "id": 262159, "index": [48], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0013929389999702835}, {"id": 1, "time": 0.0012718519999452838}, {"id": 2, "time": 0.001163137000048664}], "time": 0.0038306319997900573, "attributes": {"intAttribute": 262159, "doubleAttribute": 823179.26, "elementIDAttribute": 30000262159, "stringAttribute": "id is 262159"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1048591, "index": [51], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0013509890000023006}, {"id": 1, "time": 0.0012953609998476168}, {"id": 2, "time": 0.0011421060000884609}], "time": 0.003790015999811658, "attributes": {"intAttribute": 1048591, "doubleAttribute": 3292575.74, "elementIDAttribute": 30001048591, "stringAttribute": "id is 1048591"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1310735, "index": [52], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0011813680000614113}, {"id": 1, "time": 0.001253160000032949}, {"id": 2, "time": 0.0010975620000408526}], "time": 0.0035338380000666803, "attributes": {"intAttribute": 1310735, "doubleAttribute": 4115707.9000000004, "elementIDAttribute": 30001310735, "stringAttribute": "id is 1310735"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1835023, "index": [54], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.00114769099991463}, {"id": 1, "time": 0.0012656730000344396}, {"id": 2, "time": 0.0010982909998347168}], "time": 0.003513864999604266, "attributes": {"intAttribute": 1835023, "doubleAttribute": 5761972.220000001, "elementIDAttribute": 30001835023, "stringAttribute": "id is 1835023"}}]}, {"communications": [{"bytes": 1536.0, "from": {"home": 3, "id": 13, "migratable": false, "type": "object"}, "messages": 24, "to": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 3, "tasks": [{"entity": {"collection_id": 7, "home": 3, "id": 3407887, "index": [60], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0013538159998915944}, {"id": 1, "time": 0.0013906029998906888}, {"id": 2, "time": 0.0012447189999420516}], "time": 0.0039904329996716115, "attributes": {"intAttribute": 3407887, "doubleAttribute": 10700765.18, "elementIDAttribute": 30003407887, "stringAttribute": "id is 3407887"}}, {"entity": {"collection_id": 7, "home": 3, "id": 3145743, "index": [59], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0013225200000306359}, {"id": 1, "time": 0.00180436800019379}, {"id": 2, "time": 0.0014979339998717478}], "time": 0.004626674000064668, "attributes": {"intAttribute": 3145743, "doubleAttribute": 9877633.02, "elementIDAttribute": 30003145743, "stringAttribute": "id is 3145743"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2621455, "index": [57], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0014329999999063148}, {"id": 1, "time": 0.0015351450001617195}, {"id": 2, "time": 0.0014721929999268468}], "time": 0.00444171499998447, "attributes": {"intAttribute": 2621455, "doubleAttribute": 8231368.7, "elementIDAttribute": 30002621455, "stringAttribute": "id is 2621455"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2359311, "index": [56], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012653870001031464}, {"id": 1, "time": 0.0017814419998103403}, {"id": 2, "time": 0.0013189660000989534}], "time": 0.004367021999996723, "attributes": {"intAttribute": 2359311, "doubleAttribute": 7408236.54, "elementIDAttribute": 30002359311, "stringAttribute": "id is 2359311"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2097167, "index": [55], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001250490000074933}, {"id": 1, "time": 0.002225594000037745}, {"id": 2, "time": 0.0018036870001196803}], "time": 0.0052815860003647686, "attributes": {"intAttribute": 2097167, "doubleAttribute": 6585104.38, "elementIDAttribute": 30002097167, "stringAttribute": "id is 2097167"}}, {"entity": {"collection_id": 7, "home": 3, "id": 524303, "index": [49], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0013894700000491866}, {"id": 1, "time": 0.0011011270000835793}, {"id": 2, "time": 0.0010954580000088754}], "time": 0.0035881720000361383, "attributes": {"intAttribute": 524303, "doubleAttribute": 1646311.4200000002, "elementIDAttribute": 30000524303, "stringAttribute": "id is 524303"}}, {"entity": {"collection_id": 7, "home": 3, "id": 3932175, "index": [62], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001722470999993675}, {"id": 1, "time": 0.0011016060000201833}, {"id": 2, "time": 0.0011206359999960114}], "time": 0.003947829000026104, "attributes": {"intAttribute": 3932175, "doubleAttribute": 12347029.5, "elementIDAttribute": 30003932175, "stringAttribute": "id is 3932175"}}, {"entity": {"home": 3, "id": 4194364, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 3, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194364, "doubleAttribute": 13170302.96, "elementIDAttribute": 30004194364, "stringAttribute": "id is 4194364"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2883599, "index": [58], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0015129509999951551}, {"id": 1, "time": 0.002370052999822292}, {"id": 2, "time": 0.0012375680000786815}], "time": 0.005144423999809078, "attributes": {"intAttribute": 2883599, "doubleAttribute": 9054500.860000001, "elementIDAttribute": 30002883599, "stringAttribute": "id is 2883599"}}, {"entity": {"home": 3, "id": 13, "migratable": false, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.00010092100023939565}], "time": 0.00010092100023939565, "attributes": {"intAttribute": 13, "doubleAttribute": 40.82, "elementIDAttribute": 30000000013, "stringAttribute": "id is 13"}}, {"entity": {"home": 3, "id": 3145788, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 3.311000000394415e-06}], "time": 3.311000000394415e-06, "attributes": {"intAttribute": 3145788, "doubleAttribute": 9877774.32, "elementIDAttribute": 30003145788, "stringAttribute": "id is 3145788"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1572879, "index": [53], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.00113624699997672}, {"id": 1, "time": 0.0012986920000912505}, {"id": 2, "time": 0.0010979179999139888}], "time": 0.003534248000050866, "attributes": {"intAttribute": 1572879, "doubleAttribute": 4938840.0600000005, "elementIDAttribute": 30001572879, "stringAttribute": "id is 1572879"}}, {"entity": {"collection_id": 7, "home": 3, "id": 4194319, "index": [63], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0018998600000941224}, {"id": 1, "time": 0.0014174570001159736}, {"id": 2, "time": 0.0011612480000167125}], "time": 0.004486105000069074, "attributes": {"intAttribute": 4194319, "doubleAttribute": 13170161.66, "elementIDAttribute": 30004194319, "stringAttribute": "id is 4194319"}}, {"entity": {"collection_id": 7, "home": 3, "id": 786447, "index": [50], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0011572829998840461}, {"id": 1, "time": 0.001099906999797895}, {"id": 2, "time": 0.0015095900000687834}], "time": 0.0037680909997561685, "attributes": {"intAttribute": 786447, "doubleAttribute": 2469443.58, "elementIDAttribute": 30000786447, "stringAttribute": "id is 786447"}}, {"entity": {"collection_id": 7, "home": 3, "id": 3670031, "index": [61], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0018339539999487897}, {"id": 1, "time": 0.001538968999966528}, {"id": 2, "time": 0.0011010209998403298}], "time": 0.004491906999874118, "attributes": {"intAttribute": 3670031, "doubleAttribute": 11523897.34, "elementIDAttribute": 30003670031, "stringAttribute": "id is 3670031"}}, {"entity": {"collection_id": 7, "home": 3, "id": 262159, "index": [48], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0014366010000230744}, {"id": 1, "time": 0.001382636000016646}, {"id": 2, "time": 0.0010953670000617421}], "time": 0.003917306000175813, "attributes": {"intAttribute": 262159, "doubleAttribute": 823179.26, "elementIDAttribute": 30000262159, "stringAttribute": "id is 262159"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1048591, "index": [51], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0011364259999027126}, {"id": 1, "time": 0.001113827000153833}, {"id": 2, "time": 0.001098301999945761}], "time": 0.003350600999965536, "attributes": {"intAttribute": 1048591, "doubleAttribute": 3292575.74, "elementIDAttribute": 30001048591, "stringAttribute": "id is 1048591"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1310735, "index": [52], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012144460001763946}, {"id": 1, "time": 0.0013415619998795592}, {"id": 2, "time": 0.001110054000037053}], "time": 0.003690041000027122, "attributes": {"intAttribute": 1310735, "doubleAttribute": 4115707.9000000004, "elementIDAttribute": 30001310735, "stringAttribute": "id is 1310735"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1835023, "index": [54], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001219140999864976}, {"id": 1, "time": 0.0011014520000571792}, {"id": 2, "time": 0.0013624959999560815}], "time": 0.0036841649998677894, "attributes": {"intAttribute": 1835023, "doubleAttribute": 5761972.220000001, "elementIDAttribute": 30001835023, "stringAttribute": "id is 1835023"}}]}, {"communications": [{"bytes": 1536.0, "from": {"home": 3, "id": 13, "migratable": false, "type": "object"}, "messages": 24, "to": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 4, "tasks": [{"entity": {"collection_id": 7, "home": 3, "id": 3407887, "index": [60], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0016092450000542158}, {"id": 1, "time": 0.0014158869998937007}, {"id": 2, "time": 0.001263243000039438}], "time": 0.004289522999897599, "attributes": {"intAttribute": 3407887, "doubleAttribute": 10700765.18, "elementIDAttribute": 30003407887, "stringAttribute": "id is 3407887"}}, {"entity": {"collection_id": 7, "home": 3, "id": 3145743, "index": [59], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0015521699999681005}, {"id": 1, "time": 0.0013736150001477654}, {"id": 2, "time": 0.0023974370001269563}], "time": 0.0053243970003222785, "attributes": {"intAttribute": 3145743, "doubleAttribute": 9877633.02, "elementIDAttribute": 30003145743, "stringAttribute": "id is 3145743"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2621455, "index": [57], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0017736259999310278}, {"id": 1, "time": 0.0013794619999316637}, {"id": 2, "time": 0.0022028180001143483}], "time": 0.0053569649999190005, "attributes": {"intAttribute": 2621455, "doubleAttribute": 8231368.7, "elementIDAttribute": 30002621455, "stringAttribute": "id is 2621455"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2359311, "index": [56], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0014482449998922675}, {"id": 1, "time": 0.0013230940000994451}, {"id": 2, "time": 0.002175618999899598}], "time": 0.0049480279999443155, "attributes": {"intAttribute": 2359311, "doubleAttribute": 7408236.54, "elementIDAttribute": 30002359311, "stringAttribute": "id is 2359311"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2097167, "index": [55], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0014871420000872604}, {"id": 1, "time": 0.0013153600000350707}, {"id": 2, "time": 0.0017888770000809018}], "time": 0.004593553000177053, "attributes": {"intAttribute": 2097167, "doubleAttribute": 6585104.38, "elementIDAttribute": 30002097167, "stringAttribute": "id is 2097167"}}, {"entity": {"collection_id": 7, "home": 3, "id": 524303, "index": [49], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0016860610001003806}, {"id": 1, "time": 0.001286106999941694}, {"id": 2, "time": 0.0011118019999685202}], "time": 0.004085324000016044, "attributes": {"intAttribute": 524303, "doubleAttribute": 1646311.4200000002, "elementIDAttribute": 30000524303, "stringAttribute": "id is 524303"}}, {"entity": {"collection_id": 7, "home": 3, "id": 3932175, "index": [62], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0016249679999873479}, {"id": 1, "time": 0.0013381300000219198}, {"id": 2, "time": 0.0012977239998690493}], "time": 0.004263739999942118, "attributes": {"intAttribute": 3932175, "doubleAttribute": 12347029.5, "elementIDAttribute": 30003932175, "stringAttribute": "id is 3932175"}}, {"entity": {"home": 3, "id": 4194364, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 3, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194364, "doubleAttribute": 13170302.96, "elementIDAttribute": 30004194364, "stringAttribute": "id is 4194364"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2883599, "index": [58], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0015907680001419067}, {"id": 1, "time": 0.0013072649999230634}, {"id": 2, "time": 0.0020090409998374525}], "time": 0.00490913399994497, "attributes": {"intAttribute": 2883599, "doubleAttribute": 9054500.860000001, "elementIDAttribute": 30002883599, "stringAttribute": "id is 2883599"}}, {"entity": {"home": 3, "id": 13, "migratable": false, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.00010624000083225837}], "time": 0.00010624000083225837, "attributes": {"intAttribute": 13, "doubleAttribute": 40.82, "elementIDAttribute": 30000000013, "stringAttribute": "id is 13"}}, {"entity": {"home": 3, "id": 3145788, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 3.868000021611806e-06}], "time": 3.868000021611806e-06, "attributes": {"intAttribute": 3145788, "doubleAttribute": 9877774.32, "elementIDAttribute": 30003145788, "stringAttribute": "id is 3145788"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1572879, "index": [53], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001239229000020714}, {"id": 1, "time": 0.0013990609998018044}, {"id": 2, "time": 0.001258805000134089}], "time": 0.003898457000104827, "attributes": {"intAttribute": 1572879, "doubleAttribute": 4938840.0600000005, "elementIDAttribute": 30001572879, "stringAttribute": "id is 1572879"}}, {"entity": {"collection_id": 7, "home": 3, "id": 4194319, "index": [63], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001477608999948643}, {"id": 1, "time": 0.001436433999970177}, {"id": 2, "time": 0.0011145280000164348}], "time": 0.00403718999996272, "attributes": {"intAttribute": 4194319, "doubleAttribute": 13170161.66, "elementIDAttribute": 30004194319, "stringAttribute": "id is 4194319"}}, {"entity": {"collection_id": 7, "home": 3, "id": 786447, "index": [50], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0015300630000183446}, {"id": 1, "time": 0.0012863540000580542}, {"id": 2, "time": 0.001098253999998633}], "time": 0.003916244000038205, "attributes": {"intAttribute": 786447, "doubleAttribute": 2469443.58, "elementIDAttribute": 30000786447, "stringAttribute": "id is 786447"}}, {"entity": {"collection_id": 7, "home": 3, "id": 3670031, "index": [61], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.002233767000006992}, {"id": 1, "time": 0.001276091000136148}, {"id": 2, "time": 0.0010834780000550381}], "time": 0.004595388000097955, "attributes": {"intAttribute": 3670031, "doubleAttribute": 11523897.34, "elementIDAttribute": 30003670031, "stringAttribute": "id is 3670031"}}, {"entity": {"collection_id": 7, "home": 3, "id": 262159, "index": [48], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0018286179999904562}, {"id": 1, "time": 0.0013079889999971783}, {"id": 2, "time": 0.0013202570000885316}], "time": 0.004459056000087003, "attributes": {"intAttribute": 262159, "doubleAttribute": 823179.26, "elementIDAttribute": 30000262159, "stringAttribute": "id is 262159"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1048591, "index": [51], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001634829000067839}, {"id": 1, "time": 0.0012885490000371647}, {"id": 2, "time": 0.0013365349998366582}], "time": 0.004261863000010635, "attributes": {"intAttribute": 1048591, "doubleAttribute": 3292575.74, "elementIDAttribute": 30001048591, "stringAttribute": "id is 1048591"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1310735, "index": [52], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0014027419999820268}, {"id": 1, "time": 0.0014012780000030034}, {"id": 2, "time": 0.0011483890000363317}], "time": 0.003953923999915787, "attributes": {"intAttribute": 1310735, "doubleAttribute": 4115707.9000000004, "elementIDAttribute": 30001310735, "stringAttribute": "id is 1310735"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1835023, "index": [54], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012486569999055064}, {"id": 1, "time": 0.0014476940000349714}, {"id": 2, "time": 0.001100538999935452}], "time": 0.003798147999759749, "attributes": {"intAttribute": 1835023, "doubleAttribute": 5761972.220000001, "elementIDAttribute": 30001835023, "stringAttribute": "id is 1835023"}}]}, {"communications": [{"bytes": 1536.0, "from": {"home": 3, "id": 13, "migratable": false, "type": "object"}, "messages": 24, "to": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 5, "tasks": [{"entity": {"collection_id": 7, "home": 3, "id": 3407887, "index": [60], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0017298870000104216}, {"id": 1, "time": 0.0015412590000778437}, {"id": 2, "time": 0.001313023999955476}], "time": 0.004585534999932861, "attributes": {"intAttribute": 3407887, "doubleAttribute": 10700765.18, "elementIDAttribute": 30003407887, "stringAttribute": "id is 3407887"}}, {"entity": {"collection_id": 7, "home": 3, "id": 3145743, "index": [59], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0016902480001590448}, {"id": 1, "time": 0.001337155999863171}, {"id": 2, "time": 0.0013103239998599747}], "time": 0.004339150999840058, "attributes": {"intAttribute": 3145743, "doubleAttribute": 9877633.02, "elementIDAttribute": 30003145743, "stringAttribute": "id is 3145743"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2621455, "index": [57], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001581627999939883}, {"id": 1, "time": 0.0017735449998781405}, {"id": 2, "time": 0.0013129020001088065}], "time": 0.004685411999844291, "attributes": {"intAttribute": 2621455, "doubleAttribute": 8231368.7, "elementIDAttribute": 30002621455, "stringAttribute": "id is 2621455"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2359311, "index": [56], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0016608999999334628}, {"id": 1, "time": 0.0016037700002016209}, {"id": 2, "time": 0.0013009790000069188}], "time": 0.004566722000163281, "attributes": {"intAttribute": 2359311, "doubleAttribute": 7408236.54, "elementIDAttribute": 30002359311, "stringAttribute": "id is 2359311"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2097167, "index": [55], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001657072000170956}, {"id": 1, "time": 0.0014658669999789709}, {"id": 2, "time": 0.0012982889998056635}], "time": 0.004423372000019299, "attributes": {"intAttribute": 2097167, "doubleAttribute": 6585104.38, "elementIDAttribute": 30002097167, "stringAttribute": "id is 2097167"}}, {"entity": {"collection_id": 7, "home": 3, "id": 524303, "index": [49], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0014030660001935757}, {"id": 1, "time": 0.0010993219998454151}, {"id": 2, "time": 0.001292399999783811}], "time": 0.003796649999685542, "attributes": {"intAttribute": 524303, "doubleAttribute": 1646311.4200000002, "elementIDAttribute": 30000524303, "stringAttribute": "id is 524303"}}, {"entity": {"collection_id": 7, "home": 3, "id": 3932175, "index": [62], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001989776000073107}, {"id": 1, "time": 0.0011004150001099333}, {"id": 2, "time": 0.0012902539999686269}], "time": 0.004408189000059792, "attributes": {"intAttribute": 3932175, "doubleAttribute": 12347029.5, "elementIDAttribute": 30003932175, "stringAttribute": "id is 3932175"}}, {"entity": {"home": 3, "id": 4194364, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 3, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194364, "doubleAttribute": 13170302.96, "elementIDAttribute": 30004194364, "stringAttribute": "id is 4194364"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2883599, "index": [58], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0016061819999322324}, {"id": 1, "time": 0.0016331080000782094}, {"id": 2, "time": 0.0012901590000637952}], "time": 0.0045314850001432205, "attributes": {"intAttribute": 2883599, "doubleAttribute": 9054500.860000001, "elementIDAttribute": 30002883599, "stringAttribute": "id is 2883599"}}, {"entity": {"home": 3, "id": 13, "migratable": false, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.00010980899992318882}], "time": 0.00010980899992318882, "attributes": {"intAttribute": 13, "doubleAttribute": 40.82, "elementIDAttribute": 30000000013, "stringAttribute": "id is 13"}}, {"entity": {"home": 3, "id": 3145788, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 3.56700002157595e-06}], "time": 3.56700002157595e-06, "attributes": {"intAttribute": 3145788, "doubleAttribute": 9877774.32, "elementIDAttribute": 30003145788, "stringAttribute": "id is 3145788"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1572879, "index": [53], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012766149998242327}, {"id": 1, "time": 0.0010999529999935476}, {"id": 2, "time": 0.001301594000096884}], "time": 0.0036794689999624097, "attributes": {"intAttribute": 1572879, "doubleAttribute": 4938840.0600000005, "elementIDAttribute": 30001572879, "stringAttribute": "id is 1572879"}}, {"entity": {"collection_id": 7, "home": 3, "id": 4194319, "index": [63], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0018429330000344635}, {"id": 1, "time": 0.0013639119999879767}, {"id": 2, "time": 0.001321269000072789}], "time": 0.004575918000000456, "attributes": {"intAttribute": 4194319, "doubleAttribute": 13170161.66, "elementIDAttribute": 30004194319, "stringAttribute": "id is 4194319"}}, {"entity": {"collection_id": 7, "home": 3, "id": 786447, "index": [50], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0018415689999073948}, {"id": 1, "time": 0.001448342000003322}, {"id": 2, "time": 0.0013079900002139766}], "time": 0.0045997330003046955, "attributes": {"intAttribute": 786447, "doubleAttribute": 2469443.58, "elementIDAttribute": 30000786447, "stringAttribute": "id is 786447"}}, {"entity": {"collection_id": 7, "home": 3, "id": 3670031, "index": [61], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.002033721999850968}, {"id": 1, "time": 0.0012415639998835104}, {"id": 2, "time": 0.0013249669998458558}], "time": 0.0046026449997498275, "attributes": {"intAttribute": 3670031, "doubleAttribute": 11523897.34, "elementIDAttribute": 30003670031, "stringAttribute": "id is 3670031"}}, {"entity": {"collection_id": 7, "home": 3, "id": 262159, "index": [48], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0014326099999379949}, {"id": 1, "time": 0.001162490000069738}, {"id": 2, "time": 0.001301993000197399}], "time": 0.003899565000210714, "attributes": {"intAttribute": 262159, "doubleAttribute": 823179.26, "elementIDAttribute": 30000262159, "stringAttribute": "id is 262159"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1048591, "index": [51], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0011035350000838662}, {"id": 1, "time": 0.0012949169999956212}, {"id": 2, "time": 0.001290361999963352}], "time": 0.0037069679999603977, "attributes": {"intAttribute": 1048591, "doubleAttribute": 3292575.74, "elementIDAttribute": 30001048591, "stringAttribute": "id is 1048591"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1310735, "index": [52], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012844899999890913}, {"id": 1, "time": 0.0010977210001783533}, {"id": 2, "time": 0.001283403999877919}], "time": 0.0036675510000350187, "attributes": {"intAttribute": 1310735, "doubleAttribute": 4115707.9000000004, "elementIDAttribute": 30001310735, "stringAttribute": "id is 1310735"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1835023, "index": [54], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0013624460000301042}, {"id": 1, "time": 0.0014051629998448334}, {"id": 2, "time": 0.0012814750000416097}], "time": 0.004050508999853264, "attributes": {"intAttribute": 1835023, "doubleAttribute": 5761972.220000001, "elementIDAttribute": 30001835023, "stringAttribute": "id is 1835023"}}]}, {"communications": [{"bytes": 1664.0, "from": {"home": 3, "id": 13, "migratable": false, "type": "object"}, "messages": 26, "to": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 6, "tasks": [{"entity": {"collection_id": 7, "home": 3, "id": 3407887, "index": [60], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0017427909999696567}, {"id": 1, "time": 0.0014309779999166494}, {"id": 2, "time": 0.0012481799999477516}], "time": 0.004423491999887119, "attributes": {"intAttribute": 3407887, "doubleAttribute": 10700765.18, "elementIDAttribute": 30003407887, "stringAttribute": "id is 3407887"}}, {"entity": {"collection_id": 7, "home": 3, "id": 3145743, "index": [59], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001758881000114343}, {"id": 1, "time": 0.0015199609999854147}, {"id": 2, "time": 0.0014286139999057923}], "time": 0.004732079999939742, "attributes": {"intAttribute": 3145743, "doubleAttribute": 9877633.02, "elementIDAttribute": 30003145743, "stringAttribute": "id is 3145743"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2621455, "index": [57], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012992090000807366}, {"id": 1, "time": 0.002339168000162317}, {"id": 2, "time": 0.0014283080001860071}], "time": 0.005067845000439775, "attributes": {"intAttribute": 2621455, "doubleAttribute": 8231368.7, "elementIDAttribute": 30002621455, "stringAttribute": "id is 2621455"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2359311, "index": [56], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0015010079998774017}, {"id": 1, "time": 0.002112790999944991}, {"id": 2, "time": 0.0016060419998211728}], "time": 0.005220837999786454, "attributes": {"intAttribute": 2359311, "doubleAttribute": 7408236.54, "elementIDAttribute": 30002359311, "stringAttribute": "id is 2359311"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2097167, "index": [55], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0016072270000222488}, {"id": 1, "time": 0.0019506109999838372}, {"id": 2, "time": 0.0017410980001386633}], "time": 0.005300944000055097, "attributes": {"intAttribute": 2097167, "doubleAttribute": 6585104.38, "elementIDAttribute": 30002097167, "stringAttribute": "id is 2097167"}}, {"entity": {"collection_id": 7, "home": 3, "id": 524303, "index": [49], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0019624920000751445}, {"id": 1, "time": 0.0012700579998181638}, {"id": 2, "time": 0.0011001039999882778}], "time": 0.004334467999797198, "attributes": {"intAttribute": 524303, "doubleAttribute": 1646311.4200000002, "elementIDAttribute": 30000524303, "stringAttribute": "id is 524303"}}, {"entity": {"collection_id": 7, "home": 3, "id": 3932175, "index": [62], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001668879999897399}, {"id": 1, "time": 0.0011017910001100972}, {"id": 2, "time": 0.0011029639999833307}], "time": 0.003876858000012362, "attributes": {"intAttribute": 3932175, "doubleAttribute": 12347029.5, "elementIDAttribute": 30003932175, "stringAttribute": "id is 3932175"}}, {"entity": {"home": 3, "id": 4194364, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 3, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194364, "doubleAttribute": 13170302.96, "elementIDAttribute": 30004194364, "stringAttribute": "id is 4194364"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2883599, "index": [58], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0013305899999522808}, {"id": 1, "time": 0.0017318220000106521}, {"id": 2, "time": 0.001352085000007719}], "time": 0.004416153999954986, "attributes": {"intAttribute": 2883599, "doubleAttribute": 9054500.860000001, "elementIDAttribute": 30002883599, "stringAttribute": "id is 2883599"}}, {"entity": {"home": 3, "id": 13, "migratable": false, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 8.14559996342723e-05}], "time": 8.14559996342723e-05, "attributes": {"intAttribute": 13, "doubleAttribute": 40.82, "elementIDAttribute": 30000000013, "stringAttribute": "id is 13"}}, {"entity": {"home": 3, "id": 3145788, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 3.736000053322641e-06}], "time": 3.736000053322641e-06, "attributes": {"intAttribute": 3145788, "doubleAttribute": 9877774.32, "elementIDAttribute": 30003145788, "stringAttribute": "id is 3145788"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1572879, "index": [53], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0010986499999035004}, {"id": 1, "time": 0.001323777999914455}, {"id": 2, "time": 0.001431736000085948}], "time": 0.003855234999946333, "attributes": {"intAttribute": 1572879, "doubleAttribute": 4938840.0600000005, "elementIDAttribute": 30001572879, "stringAttribute": "id is 1572879"}}, {"entity": {"collection_id": 7, "home": 3, "id": 4194319, "index": [63], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0015178740000010293}, {"id": 1, "time": 0.0011621230000855576}, {"id": 2, "time": 0.001699284999858719}], "time": 0.004385753999940789, "attributes": {"intAttribute": 4194319, "doubleAttribute": 13170161.66, "elementIDAttribute": 30004194319, "stringAttribute": "id is 4194319"}}, {"entity": {"collection_id": 7, "home": 3, "id": 786447, "index": [50], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0015661770000860997}, {"id": 1, "time": 0.0011573000001590117}, {"id": 2, "time": 0.0010997800000041025}], "time": 0.0038250760003393225, "attributes": {"intAttribute": 786447, "doubleAttribute": 2469443.58, "elementIDAttribute": 30000786447, "stringAttribute": "id is 786447"}}, {"entity": {"collection_id": 7, "home": 3, "id": 3670031, "index": [61], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001707387000124072}, {"id": 1, "time": 0.0011424159999933181}, {"id": 2, "time": 0.0010975860000144166}], "time": 0.003949416000295969, "attributes": {"intAttribute": 3670031, "doubleAttribute": 11523897.34, "elementIDAttribute": 30003670031, "stringAttribute": "id is 3670031"}}, {"entity": {"collection_id": 7, "home": 3, "id": 262159, "index": [48], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0014432199998282158}, {"id": 1, "time": 0.0014242180000110238}, {"id": 2, "time": 0.001096892000077787}], "time": 0.0039662449999013916, "attributes": {"intAttribute": 262159, "doubleAttribute": 823179.26, "elementIDAttribute": 30000262159, "stringAttribute": "id is 262159"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1048591, "index": [51], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0016224589999183081}, {"id": 1, "time": 0.0011206719998426706}, {"id": 2, "time": 0.0010972229999879346}], "time": 0.0038422809996063734, "attributes": {"intAttribute": 1048591, "doubleAttribute": 3292575.74, "elementIDAttribute": 30001048591, "stringAttribute": "id is 1048591"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1310735, "index": [52], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0011264750000918866}, {"id": 1, "time": 0.0011114180001641216}, {"id": 2, "time": 0.0010992219999934605}], "time": 0.0033383760003289353, "attributes": {"intAttribute": 1310735, "doubleAttribute": 4115707.9000000004, "elementIDAttribute": 30001310735, "stringAttribute": "id is 1310735"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1835023, "index": [54], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0011484720000680682}, {"id": 1, "time": 0.0011917389999780426}, {"id": 2, "time": 0.001224730999865642}], "time": 0.003566107999859014, "attributes": {"intAttribute": 1835023, "doubleAttribute": 5761972.220000001, "elementIDAttribute": 30001835023, "stringAttribute": "id is 1835023"}}]}, {"communications": [{"bytes": 1536.0, "from": {"home": 3, "id": 13, "migratable": false, "type": "object"}, "messages": 24, "to": {"home": 1, "id": 5, "migratable": false, "type": "object"}, "type": "SendRecv"}], "id": 7, "tasks": [{"entity": {"collection_id": 7, "home": 3, "id": 3407887, "index": [60], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001316460999987612}, {"id": 1, "time": 0.0012859589999152377}, {"id": 2, "time": 0.0010995319998983177}], "time": 0.003703266000002259, "attributes": {"intAttribute": 3407887, "doubleAttribute": 10700765.18, "elementIDAttribute": 30003407887, "stringAttribute": "id is 3407887"}}, {"entity": {"collection_id": 7, "home": 3, "id": 3145743, "index": [59], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001397873000087202}, {"id": 1, "time": 0.001251137000053859}, {"id": 2, "time": 0.0010991359999934502}], "time": 0.003750514000103067, "attributes": {"intAttribute": 3145743, "doubleAttribute": 9877633.02, "elementIDAttribute": 30003145743, "stringAttribute": "id is 3145743"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2621455, "index": [57], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0013782260000425595}, {"id": 1, "time": 0.001343923999911567}, {"id": 2, "time": 0.0013889629999539466}], "time": 0.004112322999844764, "attributes": {"intAttribute": 2621455, "doubleAttribute": 8231368.7, "elementIDAttribute": 30002621455, "stringAttribute": "id is 2621455"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2359311, "index": [56], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0014417360000607005}, {"id": 1, "time": 0.0013404379999428784}, {"id": 2, "time": 0.0013697819999833882}], "time": 0.004153302000077019, "attributes": {"intAttribute": 2359311, "doubleAttribute": 7408236.54, "elementIDAttribute": 30002359311, "stringAttribute": "id is 2359311"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2097167, "index": [55], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012942719999955443}, {"id": 1, "time": 0.001303386000017781}, {"id": 2, "time": 0.001700455999980477}], "time": 0.004300349000004644, "attributes": {"intAttribute": 2097167, "doubleAttribute": 6585104.38, "elementIDAttribute": 30002097167, "stringAttribute": "id is 2097167"}}, {"entity": {"collection_id": 7, "home": 3, "id": 524303, "index": [49], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001281779999999344}, {"id": 1, "time": 0.0012623810000604863}, {"id": 2, "time": 0.0010989679999511281}], "time": 0.0036452669999107457, "attributes": {"intAttribute": 524303, "doubleAttribute": 1646311.4200000002, "elementIDAttribute": 30000524303, "stringAttribute": "id is 524303"}}, {"entity": {"collection_id": 7, "home": 3, "id": 3932175, "index": [62], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001282366999930673}, {"id": 1, "time": 0.0014709820000007312}, {"id": 2, "time": 0.0015770679999604909}], "time": 0.004334669999934704, "attributes": {"intAttribute": 3932175, "doubleAttribute": 12347029.5, "elementIDAttribute": 30003932175, "stringAttribute": "id is 3932175"}}, {"entity": {"home": 3, "id": 4194364, "migratable": false, "objgroup_id": 1048579, "type": "object"}, "node": 3, "resource": "cpu", "time": 0.0, "attributes": {"intAttribute": 4194364, "doubleAttribute": 13170302.96, "elementIDAttribute": 30004194364, "stringAttribute": "id is 4194364"}}, {"entity": {"collection_id": 7, "home": 3, "id": 2883599, "index": [58], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0013827339998897514}, {"id": 1, "time": 0.0013094190001083916}, {"id": 2, "time": 0.0014845630000763776}], "time": 0.004179088999990199, "attributes": {"intAttribute": 2883599, "doubleAttribute": 9054500.860000001, "elementIDAttribute": 30002883599, "stringAttribute": "id is 2883599"}}, {"entity": {"home": 3, "id": 13, "migratable": false, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.00012286099990888033}], "time": 0.00012286099990888033, "attributes": {"intAttribute": 13, "doubleAttribute": 40.82, "elementIDAttribute": 30000000013, "stringAttribute": "id is 13"}}, {"entity": {"home": 3, "id": 3145788, "migratable": false, "objgroup_id": 786435, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 3.860999868265935e-06}], "time": 3.860999868265935e-06, "attributes": {"intAttribute": 3145788, "doubleAttribute": 9877774.32, "elementIDAttribute": 30003145788, "stringAttribute": "id is 3145788"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1572879, "index": [53], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012858009999945352}, {"id": 1, "time": 0.0012469299999793293}, {"id": 2, "time": 0.001243875999989541}], "time": 0.0037778509999952803, "attributes": {"intAttribute": 1572879, "doubleAttribute": 4938840.0600000005, "elementIDAttribute": 30001572879, "stringAttribute": "id is 1572879"}}, {"entity": {"collection_id": 7, "home": 3, "id": 4194319, "index": [63], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0013159279999399587}, {"id": 1, "time": 0.0013428879999537457}, {"id": 2, "time": 0.0011932180000258086}], "time": 0.0038639219999367924, "attributes": {"intAttribute": 4194319, "doubleAttribute": 13170161.66, "elementIDAttribute": 30004194319, "stringAttribute": "id is 4194319"}}, {"entity": {"collection_id": 7, "home": 3, "id": 786447, "index": [50], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001287314999899536}, {"id": 1, "time": 0.0012502150000273105}, {"id": 2, "time": 0.001102874000025622}], "time": 0.003642360999947414, "attributes": {"intAttribute": 786447, "doubleAttribute": 2469443.58, "elementIDAttribute": 30000786447, "stringAttribute": "id is 786447"}}, {"entity": {"collection_id": 7, "home": 3, "id": 3670031, "index": [61], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012997290000384965}, {"id": 1, "time": 0.0012926169999900594}, {"id": 2, "time": 0.0012696270000560617}], "time": 0.0038652060000003985, "attributes": {"intAttribute": 3670031, "doubleAttribute": 11523897.34, "elementIDAttribute": 30003670031, "stringAttribute": "id is 3670031"}}, {"entity": {"collection_id": 7, "home": 3, "id": 262159, "index": [48], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012811620001684787}, {"id": 1, "time": 0.0012756529999933264}, {"id": 2, "time": 0.001107148999835772}], "time": 0.0036663000000771717, "attributes": {"intAttribute": 262159, "doubleAttribute": 823179.26, "elementIDAttribute": 30000262159, "stringAttribute": "id is 262159"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1048591, "index": [51], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.001313860999971439}, {"id": 1, "time": 0.001286323999920569}, {"id": 2, "time": 0.0011106770000424149}], "time": 0.003713059999881807, "attributes": {"intAttribute": 1048591, "doubleAttribute": 3292575.74, "elementIDAttribute": 30001048591, "stringAttribute": "id is 1048591"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1310735, "index": [52], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0012975500001175533}, {"id": 1, "time": 0.001324600000089049}, {"id": 2, "time": 0.0010972640000090905}], "time": 0.0037210590003269317, "attributes": {"intAttribute": 1310735, "doubleAttribute": 4115707.9000000004, "elementIDAttribute": 30001310735, "stringAttribute": "id is 1310735"}}, {"entity": {"collection_id": 7, "home": 3, "id": 1835023, "index": [54], "migratable": true, "type": "object"}, "node": 3, "resource": "cpu", "subphases": [{"id": 0, "time": 0.0014177629998357588}, {"id": 1, "time": 0.0012579340000229422}, {"id": 2, "time": 0.001108223000073849}], "time": 0.003786096999874644, "attributes": {"intAttribute": 1835023, "doubleAttribute": 5761972.220000001, "elementIDAttribute": 30001835023, "stringAttribute": "id is 1835023"}}]}]} \ No newline at end of file diff --git a/tests/unit/synthetic_attributes/data.3.json.br b/tests/unit/synthetic_attributes/data.3.json.br new file mode 100644 index 0000000000..8f745dfe08 Binary files /dev/null and b/tests/unit/synthetic_attributes/data.3.json.br differ diff --git a/tests/unit/test_json_reader.cc b/tests/unit/test_json_reader.cc index 1469d29729..aa62d38ed0 100644 --- a/tests/unit/test_json_reader.cc +++ b/tests/unit/test_json_reader.cc @@ -66,9 +66,9 @@ TEST_F(TestJSONReader, test_json_reader_1) { std::string path = std::filesystem::absolute(p).string(); NodeType rank = 0; - utility::JSONReader reader{rank, path + "/data.0.json"}; - reader.readFile(); - auto info = reader.parseFile(); + utility::JSONReader reader{rank}; + reader.readFile(path + "/data.0.json"); + auto info = reader.parse(); auto const& obj_info = info->getObjectInfo(); @@ -122,10 +122,10 @@ TEST_F(TestJSONReader, test_json_reader_metadata_attributes) { std::string path = std::filesystem::absolute(p).string(); NodeType rank = 0; - utility::JSONReader reader{rank, path + "/reader_test_data.json"}; + utility::JSONReader reader{rank}; - reader.readFile(); - auto info = reader.parseFile(); + reader.readFile(path + "/reader_test_data.json"); + auto info = reader.parse(); auto& rank_info = info->getRank(rank); EXPECT_EQ(rank_info.getRankID(), rank); @@ -138,6 +138,9 @@ TEST_F(TestJSONReader, test_json_reader_metadata_attributes) { EXPECT_TRUE(rank_attributes.find("stringSample") != rank_attributes.end()); EXPECT_EQ("abc", std::get(rank_attributes.at("stringSample"))); + + EXPECT_TRUE(rank_attributes.find("elementIDSample") != rank_attributes.end()); + EXPECT_EQ(30000000000, std::get(rank_attributes.at("elementIDSample"))); } TEST_F(TestJSONReader, test_json_reader_object_info_attributes) { @@ -145,10 +148,10 @@ TEST_F(TestJSONReader, test_json_reader_object_info_attributes) { std::string path = std::filesystem::absolute(p).string(); NodeType rank = 0; - utility::JSONReader reader{rank, path + "/reader_test_data.json"}; + utility::JSONReader reader{rank}; - reader.readFile(); - auto info = reader.parseFile(); + reader.readFile(path + "/reader_test_data.json"); + auto info = reader.parse(); auto& rank_info = info->getRank(rank); EXPECT_EQ(rank_info.getRankID(), rank); @@ -164,6 +167,9 @@ TEST_F(TestJSONReader, test_json_reader_object_info_attributes) { EXPECT_TRUE(object_attributes.find("stringSample") != object_attributes.end()); EXPECT_EQ("", std::get(object_attributes.at("stringSample"))); + + EXPECT_TRUE(object_attributes.find("elementIDSample") != object_attributes.end()); + EXPECT_EQ(50000000000, std::get(object_attributes.at("elementIDSample"))); } TEST_F(TestJSONReader, test_json_reader_qoi_serializer) { @@ -193,10 +199,10 @@ TEST_F(TestJSONReader, test_json_reader_object_work_user_defined) { std::string path = std::filesystem::absolute(p).string(); NodeType rank = 0; - utility::JSONReader reader{rank, path + "/reader_test_data.json"}; + utility::JSONReader reader{rank}; - reader.readFile(); - auto info = reader.parseFile(); + reader.readFile(path + "/reader_test_data.json"); + auto info = reader.parse(); auto& rank_info = info->getRank(rank); EXPECT_EQ(rank_info.getRankID(), rank);