magjac / d3-graphviz

Graphviz DOT rendering and animated transitions using D3
BSD 3-Clause "New" or "Revised" License
1.7k stars 104 forks source link

Low performance when rendering large dot string #327

Closed chouzz closed 1 month ago

chouzz commented 1 month ago

If I try to render a very large graph with flowing dot string, and seems graphviz.renderDot(dotStr, interactiveSVG) needs to 26 seconds to get response.

Dot string:

digraph Dependency {
graph [style="filled" fillcolor="#edf0f7" color="grey50"]
node [style="filled" fillcolor="#a2b4d6" color="#000000" fontname="Helvetica" fontsize="10" shape="polygon"]
edge [fontname="Helvetica" fontsize="10" labelfontname="Helvetica" labelfontsize="10"]
subgraph "cluster__6666_cluter"{ id="_6666_cluter" style="filled, bold" color="orange" fontcolor="orange" fontsize="16" label="llvm-project" "bolt_9c4e" "build_mingw_d37c" "clang_f23e" "clang-tools-extra_cc3e" "compiler-rt_7e3d" "cross-project-tests_df76" "flang_e876" "libc_fc1e" "libclc_ef05" "libcxx_54f1" "libcxxabi_54ac" "libunwind_4846" "lld_feab" "lldb_2ac3" "llvm_211f" "llvm-libgcc_71fe" "mlir_5602" "openmp_d55b" "polly_c597" "pstl_7b84" "third-party_6cc3" "utils_cbdb"}"bolt_9c4e" [id="bolt_9c4e" label="bolt" tooltip="bolt/" shape="polygon" fillcolor="#a2b4d6" color="green"];
"build_mingw_d37c" [id="build_mingw_d37c" label="build_mingw" tooltip="build_mingw/" shape="polygon" fillcolor="#a2b4d6" color="green"];
"clang_f23e" [id="clang_f23e" label="clang" tooltip="clang/" shape="polygon" fillcolor="#a2b4d6" color="green"];
"clang-tools-extra_cc3e" [id="clang-tools-extra_cc3e" label="clang-tools-extra" tooltip="clang-tools-extra/" shape="polygon" fillcolor="#a2b4d6" color="green"];
"libc_fc1e" [id="libc_fc1e" label="libc" tooltip="libc/" shape="polygon" fillcolor="#a2b4d6" color="green"];
"libcxx_54f1" [id="libcxx_54f1" label="libcxx" tooltip="libcxx/" shape="polygon" fillcolor="#a2b4d6" color="green"];
"lldb_2ac3" [id="lldb_2ac3" label="lldb" tooltip="lldb/" shape="polygon" fillcolor="#a2b4d6" color="green"];
"llvm_211f" [id="llvm_211f" label="llvm" tooltip="llvm/" shape="polygon" fillcolor="#a2b4d6" color="green"];
"mlir_5602" [id="mlir_5602" label="mlir" tooltip="mlir/" shape="polygon" fillcolor="#a2b4d6" color="green"];
"openmp_d55b" [id="openmp_d55b" label="openmp" tooltip="openmp/" shape="polygon" fillcolor="#a2b4d6" color="green"];
"utils_cbdb" [id="utils_cbdb" label="utils" tooltip="utils/" shape="polygon" fillcolor="#a2b4d6" color="black"];
"compiler-rt_7e3d" [id="compiler-rt_7e3d" label="compiler-rt" tooltip="compiler-rt/" shape="polygon" fillcolor="#a2b4d6" color="green"];
"flang_e876" [id="flang_e876" label="flang" tooltip="flang/" shape="polygon" fillcolor="#a2b4d6" color="green"];
"lld_feab" [id="lld_feab" label="lld" tooltip="lld/" shape="polygon" fillcolor="#a2b4d6" color="green"];
"polly_c597" [id="polly_c597" label="polly" tooltip="polly/" shape="polygon" fillcolor="#a2b4d6" color="green"];
"third-party_6cc3" [id="third-party_6cc3" label="third-party" tooltip="third-party/" shape="polygon" fillcolor="#a2b4d6" color="green"];
"libclc_ef05" [id="libclc_ef05" label="libclc" tooltip="libclc/" shape="polygon" fillcolor="#a2b4d6" color="green"];
"cross-project-tests_df76" [id="cross-project-tests_df76" label="cross-project-tests" tooltip="cross-project-tests/" shape="polygon" fillcolor="#a2b4d6" color="green"];
"libcxxabi_54ac" [id="libcxxabi_54ac" label="libcxxabi" tooltip="libcxxabi/" shape="polygon" fillcolor="#a2b4d6" color="green"];
"pstl_7b84" [id="pstl_7b84" label="pstl" tooltip="pstl/" shape="polygon" fillcolor="#a2b4d6" color="black"];
"libunwind_4846" [id="libunwind_4846" label="libunwind" tooltip="libunwind/" shape="polygon" fillcolor="#a2b4d6" color="green"];
"llvm-libgcc_71fe" [id="llvm-libgcc_71fe" label="llvm-libgcc" tooltip="llvm-libgcc/" shape="polygon" fillcolor="#a2b4d6" color="black"];
"bolt_9c4e" -> "build_mingw_d37c" [id="bolt_9c4e^build_mingw_d37c" label="1" ];
"bolt_9c4e" -> "clang_f23e" [id="bolt_9c4e^clang_f23e" label="28" ];
"bolt_9c4e" -> "clang-tools-extra_cc3e" [id="bolt_9c4e^clang-tools-extra_cc3e" label="10" ];
"bolt_9c4e" -> "libc_fc1e" [id="bolt_9c4e^libc_fc1e" label="13" ];
"bolt_9c4e" -> "libcxx_54f1" [id="bolt_9c4e^libcxx_54f1" label="2" ];
"bolt_9c4e" -> "lldb_2ac3" [id="bolt_9c4e^lldb_2ac3" label="18" ];
"bolt_9c4e" -> "llvm_211f" [id="bolt_9c4e^llvm_211f" label="466" ];
"bolt_9c4e" -> "mlir_5602" [id="bolt_9c4e^mlir_5602" label="32" ];
"bolt_9c4e" -> "openmp_d55b" [id="bolt_9c4e^openmp_d55b" label="17" ];
"bolt_9c4e" -> "utils_cbdb" [id="bolt_9c4e^utils_cbdb" label="1" ];
"build_mingw_d37c" -> "clang_f23e" [id="build_mingw_d37c^clang_f23e" label="94" color="red"];
"build_mingw_d37c" -> "clang-tools-extra_cc3e" [id="build_mingw_d37c^clang-tools-extra_cc3e" label="25" color="red"];
"build_mingw_d37c" -> "lldb_2ac3" [id="build_mingw_d37c^lldb_2ac3" label="2" color="red"];
"build_mingw_d37c" -> "llvm_211f" [id="build_mingw_d37c^llvm_211f" label="33" color="red"];
"build_mingw_d37c" -> "utils_cbdb" [id="build_mingw_d37c^utils_cbdb" label="2" ];
"clang_f23e" -> "build_mingw_d37c" [id="clang_f23e^build_mingw_d37c" label="588" color="red"];
"clang_f23e" -> "clang-tools-extra_cc3e" [id="clang_f23e^clang-tools-extra_cc3e" label="503" color="red"];
"clang_f23e" -> "compiler-rt_7e3d" [id="clang_f23e^compiler-rt_7e3d" label="1" color="red"];
"clang_f23e" -> "flang_e876" [id="clang_f23e^flang_e876" label="368" color="red"];
"clang_f23e" -> "libc_fc1e" [id="clang_f23e^libc_fc1e" label="28" color="red"];
"clang_f23e" -> "libcxx_54f1" [id="clang_f23e^libcxx_54f1" label="17" color="red"];
"clang_f23e" -> "lld_feab" [id="clang_f23e^lld_feab" label="82" color="red"];
"clang_f23e" -> "lldb_2ac3" [id="clang_f23e^lldb_2ac3" label="493" color="red"];
"clang_f23e" -> "llvm_211f" [id="clang_f23e^llvm_211f" label="3976" color="red"];
"clang_f23e" -> "mlir_5602" [id="clang_f23e^mlir_5602" label="953" color="red"];
"clang_f23e" -> "openmp_d55b" [id="clang_f23e^openmp_d55b" label="52" color="red"];
"clang_f23e" -> "polly_c597" [id="clang_f23e^polly_c597" label="5" color="red"];
"clang_f23e" -> "third-party_6cc3" [id="clang_f23e^third-party_6cc3" label="44" color="red"];
"clang_f23e" -> "utils_cbdb" [id="clang_f23e^utils_cbdb" label="38" ];
"clang-tools-extra_cc3e" -> "build_mingw_d37c" [id="clang-tools-extra_cc3e^build_mingw_d37c" label="25" color="red"];
"clang-tools-extra_cc3e" -> "clang_f23e" [id="clang-tools-extra_cc3e^clang_f23e" label="2124" color="red"];
"clang-tools-extra_cc3e" -> "flang_e876" [id="clang-tools-extra_cc3e^flang_e876" label="147" color="red"];
"clang-tools-extra_cc3e" -> "libc_fc1e" [id="clang-tools-extra_cc3e^libc_fc1e" label="1" color="red"];
"clang-tools-extra_cc3e" -> "libcxx_54f1" [id="clang-tools-extra_cc3e^libcxx_54f1" label="2" color="red"];
"clang-tools-extra_cc3e" -> "lld_feab" [id="clang-tools-extra_cc3e^lld_feab" label="1" color="red"];
"clang-tools-extra_cc3e" -> "lldb_2ac3" [id="clang-tools-extra_cc3e^lldb_2ac3" label="144" color="red"];
"clang-tools-extra_cc3e" -> "llvm_211f" [id="clang-tools-extra_cc3e^llvm_211f" label="1626" color="red"];
"clang-tools-extra_cc3e" -> "mlir_5602" [id="clang-tools-extra_cc3e^mlir_5602" label="535" color="red"];
"clang-tools-extra_cc3e" -> "openmp_d55b" [id="clang-tools-extra_cc3e^openmp_d55b" label="13" color="red"];
"clang-tools-extra_cc3e" -> "third-party_6cc3" [id="clang-tools-extra_cc3e^third-party_6cc3" label="122" color="red"];
"clang-tools-extra_cc3e" -> "utils_cbdb" [id="clang-tools-extra_cc3e^utils_cbdb" label="1" ];
"libc_fc1e" -> "build_mingw_d37c" [id="libc_fc1e^build_mingw_d37c" label="8" ];
"libc_fc1e" -> "clang_f23e" [id="libc_fc1e^clang_f23e" label="710" color="red"];
"libc_fc1e" -> "clang-tools-extra_cc3e" [id="libc_fc1e^clang-tools-extra_cc3e" label="399" color="red"];
"libc_fc1e" -> "compiler-rt_7e3d" [id="libc_fc1e^compiler-rt_7e3d" label="34" color="red"];
"libc_fc1e" -> "flang_e876" [id="libc_fc1e^flang_e876" label="4" color="red"];
"libc_fc1e" -> "libclc_ef05" [id="libc_fc1e^libclc_ef05" label="99" ];
"libc_fc1e" -> "libcxx_54f1" [id="libc_fc1e^libcxx_54f1" label="542" color="red"];
"libc_fc1e" -> "lldb_2ac3" [id="libc_fc1e^lldb_2ac3" label="482" color="red"];
"libc_fc1e" -> "llvm_211f" [id="libc_fc1e^llvm_211f" label="136" color="red"];
"libc_fc1e" -> "mlir_5602" [id="libc_fc1e^mlir_5602" label="7" ];
"libc_fc1e" -> "openmp_d55b" [id="libc_fc1e^openmp_d55b" label="2" color="red"];
"libc_fc1e" -> "third-party_6cc3" [id="libc_fc1e^third-party_6cc3" label="7" color="red"];
"libc_fc1e" -> "utils_cbdb" [id="libc_fc1e^utils_cbdb" label="22" ];
"libcxx_54f1" -> "build_mingw_d37c" [id="libcxx_54f1^build_mingw_d37c" label="2" ];
"libcxx_54f1" -> "clang_f23e" [id="libcxx_54f1^clang_f23e" label="98" color="red"];
"libcxx_54f1" -> "clang-tools-extra_cc3e" [id="libcxx_54f1^clang-tools-extra_cc3e" label="531" color="red"];
"libcxx_54f1" -> "compiler-rt_7e3d" [id="libcxx_54f1^compiler-rt_7e3d" label="29" color="red"];
"libcxx_54f1" -> "libc_fc1e" [id="libcxx_54f1^libc_fc1e" label="37" color="red"];
"libcxx_54f1" -> "libclc_ef05" [id="libcxx_54f1^libclc_ef05" label="57" color="red"];
"libcxx_54f1" -> "libcxxabi_54ac" [id="libcxx_54f1^libcxxabi_54ac" label="1" color="red"];
"libcxx_54f1" -> "lldb_2ac3" [id="libcxx_54f1^lldb_2ac3" label="43" color="red"];
"libcxx_54f1" -> "llvm_211f" [id="libcxx_54f1^llvm_211f" label="368" color="red"];
"libcxx_54f1" -> "mlir_5602" [id="libcxx_54f1^mlir_5602" label="30" ];
"libcxx_54f1" -> "openmp_d55b" [id="libcxx_54f1^openmp_d55b" label="1" color="red"];
"libcxx_54f1" -> "polly_c597" [id="libcxx_54f1^polly_c597" label="14" ];
"libcxx_54f1" -> "pstl_7b84" [id="libcxx_54f1^pstl_7b84" label="41" color="red"];
"libcxx_54f1" -> "third-party_6cc3" [id="libcxx_54f1^third-party_6cc3" label="36" ];
"lldb_2ac3" -> "build_mingw_d37c" [id="lldb_2ac3^build_mingw_d37c" label="11" color="red"];
"lldb_2ac3" -> "clang_f23e" [id="lldb_2ac3^clang_f23e" label="701" color="red"];
"lldb_2ac3" -> "clang-tools-extra_cc3e" [id="lldb_2ac3^clang-tools-extra_cc3e" label="477" color="red"];
"lldb_2ac3" -> "compiler-rt_7e3d" [id="lldb_2ac3^compiler-rt_7e3d" label="1" color="red"];
"lldb_2ac3" -> "flang_e876" [id="lldb_2ac3^flang_e876" label="304" color="red"];
"lldb_2ac3" -> "libc_fc1e" [id="lldb_2ac3^libc_fc1e" label="110" color="red"];
"lldb_2ac3" -> "libclc_ef05" [id="lldb_2ac3^libclc_ef05" label="6" color="red"];
"lldb_2ac3" -> "libcxx_54f1" [id="lldb_2ac3^libcxx_54f1" label="1" color="red"];
"lldb_2ac3" -> "libunwind_4846" [id="lldb_2ac3^libunwind_4846" label="1" color="red"];
"lldb_2ac3" -> "lld_feab" [id="lldb_2ac3^lld_feab" label="4" color="red"];
"lldb_2ac3" -> "llvm_211f" [id="lldb_2ac3^llvm_211f" label="2624" color="red"];
"lldb_2ac3" -> "mlir_5602" [id="lldb_2ac3^mlir_5602" label="320" color="red"];
"lldb_2ac3" -> "openmp_d55b" [id="lldb_2ac3^openmp_d55b" label="95" color="red"];
"lldb_2ac3" -> "polly_c597" [id="lldb_2ac3^polly_c597" label="1" color="red"];
"lldb_2ac3" -> "third-party_6cc3" [id="lldb_2ac3^third-party_6cc3" label="43" color="red"];
"lldb_2ac3" -> "utils_cbdb" [id="lldb_2ac3^utils_cbdb" label="10" ];
"llvm_211f" -> "build_mingw_d37c" [id="llvm_211f^build_mingw_d37c" label="200" color="red"];
"llvm_211f" -> "clang_f23e" [id="llvm_211f^clang_f23e" label="1793" color="red"];
"llvm_211f" -> "clang-tools-extra_cc3e" [id="llvm_211f^clang-tools-extra_cc3e" label="672" color="red"];
"llvm_211f" -> "compiler-rt_7e3d" [id="llvm_211f^compiler-rt_7e3d" label="3" color="red"];
"llvm_211f" -> "flang_e876" [id="llvm_211f^flang_e876" label="321" color="red"];
"llvm_211f" -> "libc_fc1e" [id="llvm_211f^libc_fc1e" label="123" color="red"];
"llvm_211f" -> "libcxx_54f1" [id="llvm_211f^libcxx_54f1" label="2" color="red"];
"llvm_211f" -> "lldb_2ac3" [id="llvm_211f^lldb_2ac3" label="167" color="red"];
"llvm_211f" -> "mlir_5602" [id="llvm_211f^mlir_5602" label="2652" color="red"];
"llvm_211f" -> "openmp_d55b" [id="llvm_211f^openmp_d55b" label="645" color="red"];
"llvm_211f" -> "polly_c597" [id="llvm_211f^polly_c597" label="236" color="red"];
"llvm_211f" -> "third-party_6cc3" [id="llvm_211f^third-party_6cc3" label="84" color="red"];
"llvm_211f" -> "utils_cbdb" [id="llvm_211f^utils_cbdb" label="225" ];
"mlir_5602" -> "build_mingw_d37c" [id="mlir_5602^build_mingw_d37c" label="9" ];
"mlir_5602" -> "clang_f23e" [id="mlir_5602^clang_f23e" label="197" color="red"];
"mlir_5602" -> "clang-tools-extra_cc3e" [id="mlir_5602^clang-tools-extra_cc3e" label="67" color="red"];
"mlir_5602" -> "compiler-rt_7e3d" [id="mlir_5602^compiler-rt_7e3d" label="1" color="red"];
"mlir_5602" -> "flang_e876" [id="mlir_5602^flang_e876" label="33" color="red"];
"mlir_5602" -> "lldb_2ac3" [id="mlir_5602^lldb_2ac3" label="46" color="red"];
"mlir_5602" -> "llvm_211f" [id="mlir_5602^llvm_211f" label="1631" color="red"];
"mlir_5602" -> "openmp_d55b" [id="mlir_5602^openmp_d55b" label="116" color="red"];
"mlir_5602" -> "polly_c597" [id="mlir_5602^polly_c597" label="14" color="red"];
"mlir_5602" -> "third-party_6cc3" [id="mlir_5602^third-party_6cc3" label="31" ];
"openmp_d55b" -> "build_mingw_d37c" [id="openmp_d55b^build_mingw_d37c" label="2" ];
"openmp_d55b" -> "clang_f23e" [id="openmp_d55b^clang_f23e" label="556" color="red"];
"openmp_d55b" -> "clang-tools-extra_cc3e" [id="openmp_d55b^clang-tools-extra_cc3e" label="163" color="red"];
"openmp_d55b" -> "libc_fc1e" [id="openmp_d55b^libc_fc1e" label="7" color="red"];
"openmp_d55b" -> "libclc_ef05" [id="openmp_d55b^libclc_ef05" label="1" ];
"openmp_d55b" -> "libcxx_54f1" [id="openmp_d55b^libcxx_54f1" label="4" color="red"];
"openmp_d55b" -> "lldb_2ac3" [id="openmp_d55b^lldb_2ac3" label="414" color="red"];
"openmp_d55b" -> "llvm_211f" [id="openmp_d55b^llvm_211f" label="84" color="red"];
"openmp_d55b" -> "mlir_5602" [id="openmp_d55b^mlir_5602" label="11" color="red"];
"compiler-rt_7e3d" -> "build_mingw_d37c" [id="compiler-rt_7e3d^build_mingw_d37c" label="32" ];
"compiler-rt_7e3d" -> "clang_f23e" [id="compiler-rt_7e3d^clang_f23e" label="1424" color="red"];
"compiler-rt_7e3d" -> "clang-tools-extra_cc3e" [id="compiler-rt_7e3d^clang-tools-extra_cc3e" label="1910" ];
"compiler-rt_7e3d" -> "flang_e876" [id="compiler-rt_7e3d^flang_e876" label="2" ];
"compiler-rt_7e3d" -> "libc_fc1e" [id="compiler-rt_7e3d^libc_fc1e" label="242" color="red"];
"compiler-rt_7e3d" -> "libclc_ef05" [id="compiler-rt_7e3d^libclc_ef05" label="11" ];
"compiler-rt_7e3d" -> "libcxx_54f1" [id="compiler-rt_7e3d^libcxx_54f1" label="82" color="red"];
"compiler-rt_7e3d" -> "lldb_2ac3" [id="compiler-rt_7e3d^lldb_2ac3" label="1183" color="red"];
"compiler-rt_7e3d" -> "llvm_211f" [id="compiler-rt_7e3d^llvm_211f" label="235" color="red"];
"compiler-rt_7e3d" -> "mlir_5602" [id="compiler-rt_7e3d^mlir_5602" label="17" color="red"];
"compiler-rt_7e3d" -> "polly_c597" [id="compiler-rt_7e3d^polly_c597" label="26" ];
"compiler-rt_7e3d" -> "third-party_6cc3" [id="compiler-rt_7e3d^third-party_6cc3" label="8" ];
"compiler-rt_7e3d" -> "utils_cbdb" [id="compiler-rt_7e3d^utils_cbdb" label="1" ];
"flang_e876" -> "build_mingw_d37c" [id="flang_e876^build_mingw_d37c" label="12" ];
"flang_e876" -> "clang_f23e" [id="flang_e876^clang_f23e" label="59" color="red"];
"flang_e876" -> "clang-tools-extra_cc3e" [id="flang_e876^clang-tools-extra_cc3e" label="65" color="red"];
"flang_e876" -> "libc_fc1e" [id="flang_e876^libc_fc1e" label="20" color="red"];
"flang_e876" -> "libcxx_54f1" [id="flang_e876^libcxx_54f1" label="21" ];
"flang_e876" -> "lld_feab" [id="flang_e876^lld_feab" label="1" color="red"];
"flang_e876" -> "lldb_2ac3" [id="flang_e876^lldb_2ac3" label="40" color="red"];
"flang_e876" -> "llvm_211f" [id="flang_e876^llvm_211f" label="278" color="red"];
"flang_e876" -> "mlir_5602" [id="flang_e876^mlir_5602" label="400" color="red"];
"flang_e876" -> "openmp_d55b" [id="flang_e876^openmp_d55b" label="25" ];
"flang_e876" -> "third-party_6cc3" [id="flang_e876^third-party_6cc3" label="3" ];
"flang_e876" -> "utils_cbdb" [id="flang_e876^utils_cbdb" label="1" ];
"lld_feab" -> "build_mingw_d37c" [id="lld_feab^build_mingw_d37c" label="10" ];
"lld_feab" -> "clang_f23e" [id="lld_feab^clang_f23e" label="10" color="red"];
"lld_feab" -> "clang-tools-extra_cc3e" [id="lld_feab^clang-tools-extra_cc3e" label="3" color="red"];
"lld_feab" -> "flang_e876" [id="lld_feab^flang_e876" label="47" color="red"];
"lld_feab" -> "libc_fc1e" [id="lld_feab^libc_fc1e" label="16" ];
"lld_feab" -> "libunwind_4846" [id="lld_feab^libunwind_4846" label="5" ];
"lld_feab" -> "lldb_2ac3" [id="lld_feab^lldb_2ac3" label="22" color="red"];
"lld_feab" -> "llvm_211f" [id="lld_feab^llvm_211f" label="874" ];
"lld_feab" -> "mlir_5602" [id="lld_feab^mlir_5602" label="112" ];
"lld_feab" -> "openmp_d55b" [id="lld_feab^openmp_d55b" label="7" ];
"lld_feab" -> "third-party_6cc3" [id="lld_feab^third-party_6cc3" label="3" ];
"lld_feab" -> "utils_cbdb" [id="lld_feab^utils_cbdb" label="7" ];
"polly_c597" -> "build_mingw_d37c" [id="polly_c597^build_mingw_d37c" label="2" ];
"polly_c597" -> "clang_f23e" [id="polly_c597^clang_f23e" label="92" color="red"];
"polly_c597" -> "clang-tools-extra_cc3e" [id="polly_c597^clang-tools-extra_cc3e" label="99" ];
"polly_c597" -> "flang_e876" [id="polly_c597^flang_e876" label="11" ];
"polly_c597" -> "libc_fc1e" [id="polly_c597^libc_fc1e" label="4" ];
"polly_c597" -> "lld_feab" [id="polly_c597^lld_feab" label="1" ];
"polly_c597" -> "lldb_2ac3" [id="polly_c597^lldb_2ac3" label="38" color="red"];
"polly_c597" -> "llvm_211f" [id="polly_c597^llvm_211f" label="311" color="red"];
"polly_c597" -> "mlir_5602" [id="polly_c597^mlir_5602" label="37" color="red"];
"polly_c597" -> "openmp_d55b" [id="polly_c597^openmp_d55b" label="14" ];
"polly_c597" -> "third-party_6cc3" [id="polly_c597^third-party_6cc3" label="1" ];
"polly_c597" -> "utils_cbdb" [id="polly_c597^utils_cbdb" label="1" ];
"third-party_6cc3" -> "build_mingw_d37c" [id="third-party_6cc3^build_mingw_d37c" label="1" ];
"third-party_6cc3" -> "clang_f23e" [id="third-party_6cc3^clang_f23e" label="37" color="red"];
"third-party_6cc3" -> "clang-tools-extra_cc3e" [id="third-party_6cc3^clang-tools-extra_cc3e" label="70" color="red"];
"third-party_6cc3" -> "libc_fc1e" [id="third-party_6cc3^libc_fc1e" label="16" color="red"];
"third-party_6cc3" -> "libclc_ef05" [id="third-party_6cc3^libclc_ef05" label="8" ];
"third-party_6cc3" -> "lldb_2ac3" [id="third-party_6cc3^lldb_2ac3" label="14" color="red"];
"third-party_6cc3" -> "llvm_211f" [id="third-party_6cc3^llvm_211f" label="7" color="red"];
"libclc_ef05" -> "clang_f23e" [id="libclc_ef05^clang_f23e" label="4" ];
"libclc_ef05" -> "libcxx_54f1" [id="libclc_ef05^libcxx_54f1" label="8" color="red"];
"libclc_ef05" -> "lldb_2ac3" [id="libclc_ef05^lldb_2ac3" label="1" color="red"];
"libclc_ef05" -> "llvm_211f" [id="libclc_ef05^llvm_211f" label="14" ];
"libclc_ef05" -> "utils_cbdb" [id="libclc_ef05^utils_cbdb" label="2" ];
"cross-project-tests_df76" -> "build_mingw_d37c" [id="cross-project-tests_df76^build_mingw_d37c" label="1" ];
"cross-project-tests_df76" -> "clang_f23e" [id="cross-project-tests_df76^clang_f23e" label="1" ];
"cross-project-tests_df76" -> "clang-tools-extra_cc3e" [id="cross-project-tests_df76^clang-tools-extra_cc3e" label="1" ];
"cross-project-tests_df76" -> "lldb_2ac3" [id="cross-project-tests_df76^lldb_2ac3" label="4" ];
"cross-project-tests_df76" -> "llvm_211f" [id="cross-project-tests_df76^llvm_211f" label="9" ];
"cross-project-tests_df76" -> "mlir_5602" [id="cross-project-tests_df76^mlir_5602" label="5" ];
"libcxxabi_54ac" -> "build_mingw_d37c" [id="libcxxabi_54ac^build_mingw_d37c" label="7" ];
"libcxxabi_54ac" -> "clang_f23e" [id="libcxxabi_54ac^clang_f23e" label="37" ];
"libcxxabi_54ac" -> "clang-tools-extra_cc3e" [id="libcxxabi_54ac^clang-tools-extra_cc3e" label="35" ];
"libcxxabi_54ac" -> "compiler-rt_7e3d" [id="libcxxabi_54ac^compiler-rt_7e3d" label="2" ];
"libcxxabi_54ac" -> "libc_fc1e" [id="libcxxabi_54ac^libc_fc1e" label="1" ];
"libcxxabi_54ac" -> "libcxx_54f1" [id="libcxxabi_54ac^libcxx_54f1" label="18" color="red"];
"libcxxabi_54ac" -> "lldb_2ac3" [id="libcxxabi_54ac^lldb_2ac3" label="8" ];
"libcxxabi_54ac" -> "llvm_211f" [id="libcxxabi_54ac^llvm_211f" label="5" ];
"pstl_7b84" -> "clang_f23e" [id="pstl_7b84^clang_f23e" label="10" ];
"pstl_7b84" -> "libcxx_54f1" [id="pstl_7b84^libcxx_54f1" label="59" color="red"];
"libunwind_4846" -> "build_mingw_d37c" [id="libunwind_4846^build_mingw_d37c" label="16" ];
"libunwind_4846" -> "clang_f23e" [id="libunwind_4846^clang_f23e" label="37" ];
"libunwind_4846" -> "clang-tools-extra_cc3e" [id="libunwind_4846^clang-tools-extra_cc3e" label="38" ];
"libunwind_4846" -> "compiler-rt_7e3d" [id="libunwind_4846^compiler-rt_7e3d" label="3" ];
"libunwind_4846" -> "libc_fc1e" [id="libunwind_4846^libc_fc1e" label="2" ];
"libunwind_4846" -> "lldb_2ac3" [id="libunwind_4846^lldb_2ac3" label="16" color="red"];
"libunwind_4846" -> "utils_cbdb" [id="libunwind_4846^utils_cbdb" label="13" ];
}

It takes about 26228.488037109375 ms after rendering, and I test it in https://observablehq.com/@gordonsmith/graphviz-wasm-example it gets results very quickly(less than 1 second).

magjac commented 1 month ago

You may want to try to disable some computational expensive features. See https://github.com/magjac/d3-graphviz?tab=readme-ov-file#performance

chouzz commented 1 month ago

Thanks! I will double check.