[ 
https://issues.apache.org/jira/browse/ARROW-18039?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17640470#comment-17640470
 ] 

Kouhei Sutou commented on ARROW-18039:
--------------------------------------

Worst 100 build time on my local Windows:

{noformat}
  1: 124.790000s: 
google_cloud_cpp_ep-prefix/src/google_cloud_cpp_ep-stamp/google_cloud_cpp_ep-build,
 google_cloud_cpp_ep-install/lib/libgoogle_cloud_cpp_storage.a, 
google_cloud_cpp_ep-install/lib/libgoogle_cloud_cpp_rest_internal.a, 
google_cloud_cpp_ep-install/lib/libgoogle_cloud_cpp_common.a, 
C:/Users/kou/work/arrow/build-msys/google_cloud_cpp_ep-prefix/src/google_cloud_cpp_ep-stamp/google_cloud_cpp_ep-build,
 
C:/Users/kou/work/arrow/build-msys/google_cloud_cpp_ep-install/lib/libgoogle_cloud_cpp_storage.a,
 
C:/Users/kou/work/arrow/build-msys/google_cloud_cpp_ep-install/lib/libgoogle_cloud_cpp_rest_internal.a,
 
C:/Users/kou/work/arrow/build-msys/google_cloud_cpp_ep-install/lib/libgoogle_cloud_cpp_common.a
  2: 103.922000s: 
src/parquet/CMakeFiles/parquet-arrow-test.dir/arrow/arrow_reader_writer_test.cc.obj
  3:  94.791000s: 
src/arrow/compute/kernels/CMakeFiles/arrow-compute-vector-test.dir/vector_replace_test.cc.obj
  4:  81.723000s: 
src/arrow/compute/kernels/CMakeFiles/arrow-compute-scalar-test.dir/scalar_if_else_test.cc.obj
  5:  72.075000s: 
src/arrow/compute/kernels/CMakeFiles/arrow-compute-aggregate-test.dir/aggregate_test.cc.obj
  6:  64.858000s: 
src/arrow/CMakeFiles/arrow-array-test.dir/array/array_test.cc.obj
  7:  57.531000s: 
src/arrow/compute/kernels/CMakeFiles/arrow-compute-scalar-test.dir/scalar_arithmetic_test.cc.obj
  8:  42.816000s: 
src/arrow/CMakeFiles/arrow_shared.dir/compute/kernels/vector_sort.cc.obj
  9:  41.387000s: 
src/arrow/CMakeFiles/arrow_shared.dir/compute/kernels/scalar_arithmetic.cc.obj
 10:  37.235000s: 
src/arrow/compute/kernels/CMakeFiles/arrow-compute-vector-test.dir/vector_selection_test.cc.obj
 11:  37.111000s: 
src/arrow/compute/kernels/CMakeFiles/arrow-compute-scalar-test.dir/scalar_compare_test.cc.obj
 12:  36.954000s: 
src/arrow/CMakeFiles/arrow-array-test.dir/array/array_dict_test.cc.obj
 13:  36.640000s: 
src/arrow/CMakeFiles/arrow_shared.dir/compute/kernels/hash_aggregate.cc.obj
 14:  33.652000s: 
src/arrow/CMakeFiles/arrow_shared.dir/compute/kernels/scalar_temporal_binary.cc.obj
 15:  33.567000s: 
src/arrow/compute/kernels/CMakeFiles/arrow-compute-scalar-test.dir/scalar_string_test.cc.obj
 16:  30.662000s: 
src/arrow/CMakeFiles/arrow_shared.dir/compute/kernels/scalar_temporal_unary.cc.obj
 17:  30.403000s: 
src/arrow/dataset/CMakeFiles/arrow-dataset-scanner-test.dir/scanner_test.cc.obj
 18:  29.843000s: src/arrow/CMakeFiles/arrow_shared.dir/builder.cc.obj
 19:  29.193000s: 
src/arrow/CMakeFiles/arrow-sparse-tensor-test.dir/sparse_tensor_test.cc.obj
 20:  29.089000s: 
src/arrow/util/CMakeFiles/arrow-utility-test.dir/small_vector_test.cc.obj
 21:  28.395000s: 
src/arrow/filesystem/CMakeFiles/arrow-gcsfs-test.dir/gcsfs_test.cc.obj
 22:  28.305000s: 
src/arrow/ipc/CMakeFiles/arrow-ipc-read-write-test.dir/read_write_test.cc.obj
 23:  26.873000s: src/arrow/CMakeFiles/arrow-scalar-test.dir/scalar_test.cc.obj
 24:  26.222000s: 
src/gandiva/CMakeFiles/gandiva_shared.dir/function_registry_arithmetic.cc.obj
 25:  25.608000s: 
src/arrow/util/CMakeFiles/arrow-async-utility-test.dir/async_generator_test.cc.obj
 26:  25.414000s: 
src/arrow/compute/kernels/CMakeFiles/arrow-compute-aggregate-test.dir/hash_aggregate_test.cc.obj
 27:  23.884000s: 
src/arrow/compute/kernels/CMakeFiles/arrow-compute-vector-test.dir/vector_sort_test.cc.obj
 28:  22.756000s: 
src/gandiva/tests/CMakeFiles/gandiva-projector-test.dir/projector_test.cc.obj
 29:  20.789000s: 
src/arrow/ipc/CMakeFiles/arrow-ipc-json-simple-test.dir/json_simple_test.cc.obj
 30:  20.290000s: 
src/parquet/CMakeFiles/parquet-writer-test.dir/column_writer_test.cc.obj
 31:  19.539000s: 
src/arrow/CMakeFiles/arrow_shared.dir/compute/kernels/aggregate_basic.cc.obj
 32:  19.115000s: 
src/arrow/CMakeFiles/arrow_shared.dir/compute/kernels/scalar_string_ascii.cc.obj
 33:  19.045000s: 
src/arrow/util/CMakeFiles/arrow-utility-test.dir/decimal_test.cc.obj
 34:  18.993000s: 
src/arrow/dataset/CMakeFiles/arrow-dataset-file-parquet-test.dir/file_parquet_test.cc.obj
 35:  18.743000s: 
src/arrow/compute/exec/CMakeFiles/arrow-compute-plan-test.dir/plan_test.cc.obj
 36:  18.203000s: 
src/arrow/compute/kernels/CMakeFiles/arrow-compute-vector-test.dir/vector_hash_test.cc.obj
 37:  17.673000s: 
src/arrow/dataset/CMakeFiles/arrow-dataset-partition-test.dir/partition_test.cc.obj
 38:  16.936000s: 
src/arrow/CMakeFiles/arrow-array-test.dir/array/array_binary_test.cc.obj
 39:  16.518000s: 
src/arrow/c/CMakeFiles/arrow-c-bridge-test.dir/bridge_test.cc.obj
 40:  16.342000s: 
src/parquet/CMakeFiles/parquet-internals-test.dir/statistics_test.cc.obj
 41:  16.215000s: 
src/arrow/compute/exec/CMakeFiles/arrow-compute-hash-join-node-test.dir/hash_join_node_test.cc.obj
 42:  15.976000s: 
src/arrow/dataset/CMakeFiles/arrow-dataset-file-ipc-test.dir/file_ipc_test.cc.obj
 43:  15.845000s: src/arrow/CMakeFiles/arrow-type-test.dir/type_test.cc.obj
 44:  15.689000s: 
src/arrow/flight/CMakeFiles/arrow-flight-test.dir/flight_test.cc.obj
 45:  15.688000s: 
src/arrow/CMakeFiles/arrow_shared.dir/compute/kernels/scalar_compare.cc.obj
 46:  15.559000s: 
src/arrow/compute/kernels/CMakeFiles/arrow-compute-scalar-test.dir/scalar_cast_test.cc.obj
 47:  15.358000s: 
src/arrow/compute/exec/CMakeFiles/arrow-compute-asof-join-node-test.dir/asof_join_node_test.cc.obj
 48:  15.162000s: src/parquet/CMakeFiles/parquet_shared.dir/column_reader.cc.obj
 49:  15.084000s: 
src/arrow/flight/CMakeFiles/arrow_flight_testing_shared.dir/test_util.cc.obj
 50:  14.919000s: 
src/parquet/CMakeFiles/parquet-writer-test.dir/file_serialize_test.cc.obj
 51:  14.812000s: 
src/arrow/dataset/CMakeFiles/arrow_dataset_shared.dir/scanner.cc.obj
 52:  14.791000s: src/arrow/CMakeFiles/arrow_shared.dir/ipc/json_simple.cc.obj
 53:  14.543000s: 
src/parquet/CMakeFiles/parquet-internals-test.dir/encoding_test.cc.obj
 54:  14.490000s: src/parquet/CMakeFiles/parquet_shared.dir/encoding.cc.obj
 55:  14.360000s: 
src/arrow/compute/exec/CMakeFiles/arrow-compute-expression-test.dir/expression_test.cc.obj
 56:  14.101000s: 
src/arrow/compute/kernels/CMakeFiles/arrow-compute-vector-test.dir/select_k_test.cc.obj
 57:  14.070000s: 
src/arrow/CMakeFiles/arrow_shared.dir/compute/kernels/scalar_if_else.cc.obj
 58:  13.958000s: 
src/arrow/compute/kernels/CMakeFiles/arrow-compute-scalar-test.dir/scalar_temporal_test.cc.obj
 59:  13.921000s: src/arrow/CMakeFiles/arrow_shared.dir/filesystem/s3fs.cc.obj
 60:  13.896000s: 
src/arrow/CMakeFiles/arrow-array-test.dir/array/array_list_test.cc.obj
 61:  13.526000s: 
src/arrow/dataset/CMakeFiles/arrow-dataset-file-test.dir/file_test.cc.obj
 62:  13.449000s: 
src/arrow/CMakeFiles/arrow_shared.dir/compute/kernels/vector_array_sort.cc.obj
 63:  13.385000s: 
src/arrow/CMakeFiles/arrow_shared.dir/compute/api_scalar.cc.obj
 64:  13.332000s: release/libarrow.dll, release/libarrow.dll.a
 65:  13.302000s: 
src/arrow/dataset/CMakeFiles/arrow-dataset-dataset-test.dir/dataset_test.cc.obj
 66:  12.982000s: 
src/arrow/filesystem/CMakeFiles/arrow-s3fs-test.dir/s3fs_test.cc.obj
 67:  12.980000s: 
src/arrow/CMakeFiles/arrow_shared.dir/compute/kernels/vector_selection.cc.obj
 68:  12.979000s: 
src/arrow/util/CMakeFiles/arrow-bit-utility-test.dir/bit_util_test.cc.obj
 69:  12.950000s: 
src/gandiva/CMakeFiles/gandiva_shared.dir/function_registry_hash.cc.obj
 70:  12.650000s: src/parquet/CMakeFiles/parquet_shared.dir/column_writer.cc.obj
 71:  12.452000s: 
src/arrow/ipc/CMakeFiles/arrow-ipc-tensor-test.dir/tensor_test.cc.obj
 72:  12.379000s: 
src/arrow/util/CMakeFiles/arrow-threading-utility-test.dir/future_test.cc.obj
 73:  12.304000s: 
src/parquet/CMakeFiles/parquet-arrow-test.dir/arrow/arrow_schema_test.cc.obj
 74:  12.165000s: 
src/arrow/filesystem/CMakeFiles/arrow-s3fs-test.dir/s3_test_util.cc.obj
 75:  12.160000s: 
src/arrow/CMakeFiles/arrow_shared.dir/compute/kernels/scalar_cast_numeric.cc.obj
 76:  12.114000s: src/arrow/CMakeFiles/arrow_shared.dir/scalar.cc.obj
 77:  12.045000s: 
src/gandiva/precompiled/CMakeFiles/gandiva-precompiled-test.dir/string_ops_test.cc.obj
 78:  11.973000s: 
src/parquet/CMakeFiles/parquet-schema-test.dir/schema_test.cc.obj
 79:  11.749000s: 
src/arrow/compute/kernels/CMakeFiles/arrow-compute-scalar-test.dir/scalar_nested_test.cc.obj
 80:  11.596000s: 
src/arrow/CMakeFiles/arrow_shared.dir/compute/kernels/scalar_nested.cc.obj
 81:  11.324000s: 
src/arrow/CMakeFiles/arrow_shared.dir/compute/kernels/aggregate_basic_avx2.cc.obj
 82:  11.218000s: 
src/arrow/CMakeFiles/arrow_shared.dir/compute/exec/expression.cc.obj
 83:  11.173000s: 
src/arrow/filesystem/CMakeFiles/arrow-filesystem-test.dir/filesystem_test.cc.obj
 84:  11.133000s: 
src/arrow/CMakeFiles/arrow_shared.dir/compute/kernels/scalar_cast_string.cc.obj
 85:  11.130000s: 
src/arrow/flight/CMakeFiles/arrow_flight_shared.dir/transport/grpc/protocol_grpc_internal.cc.obj
 86:  10.955000s: 
src/arrow/CMakeFiles/arrow_shared.dir/compute/kernels/aggregate_mode.cc.obj
 87:  10.868000s: src/arrow/CMakeFiles/arrow-misc-test.dir/result_test.cc.obj
 88:  10.686000s: 
src/arrow/CMakeFiles/arrow_shared.dir/compute/kernels/scalar_string_utf8.cc.obj
 89:  10.674000s: 
src/arrow/CMakeFiles/arrow_shared.dir/compute/kernels/vector_hash.cc.obj
 90:  10.616000s: src/arrow/CMakeFiles/arrow_shared.dir/ipc/reader.cc.obj
 91:  10.556000s: 
src/arrow/io/CMakeFiles/arrow-io-memory-test.dir/memory_test.cc.obj
 92:  10.507000s: 
src/parquet/CMakeFiles/parquet-reader-test.dir/reader_test.cc.obj
 93:  10.327000s: 
src/arrow/testing/CMakeFiles/arrow-random-test.dir/random_test.cc.obj
 94:  10.325000s: 
src/arrow/compute/kernels/CMakeFiles/arrow-compute-scalar-test.dir/scalar_set_lookup_test.cc.obj
 95:  10.250000s: 
src/parquet/CMakeFiles/parquet_shared.dir/__/generated/parquet_types.cpp.obj
 96:  10.240000s: 
src/arrow/CMakeFiles/arrow_shared.dir/compute/exec/tpch_node.cc.obj
 97:  10.137000s: 
src/arrow/dataset/CMakeFiles/arrow-dataset-discovery-test.dir/discovery_test.cc.obj
 98:  10.137000s: 
src/arrow/compute/exec/CMakeFiles/arrow-compute-tpch-node-test.dir/tpch_node_test.cc.obj
 99:   9.922000s: 
src/arrow/util/CMakeFiles/arrow-threading-utility-test.dir/thread_pool_test.cc.obj
100:   9.895000s: 
src/gandiva/CMakeFiles/gandiva_shared.dir/function_registry_math_ops.cc.obj
{noformat}

> [C++][CI] Reduce MinGW build times
> ----------------------------------
>
>                 Key: ARROW-18039
>                 URL: https://issues.apache.org/jira/browse/ARROW-18039
>             Project: Apache Arrow
>          Issue Type: Wish
>          Components: C++, Continuous Integration
>            Reporter: Antoine Pitrou
>            Assignee: Kouhei Sutou
>            Priority: Major
>
> The MinGW C++ builds on CI currently build in release mode. This is probably 
> because debug builds on Windows are complicated (you must get all the 
> dependencies also compiled in debug mode, AFAIU).
> However, we could probably disable optimizations, so as to reduce compilation 
> times.
> The compilation flags are currently as follows:
> {code}
> -- CMAKE_C_FLAGS:  -O2 -DNDEBUG -ftree-vectorize  -Wa,-mbig-obj -Wall 
> -Wno-conversion -Wno-sign-conversion -Wunused-result 
> -fno-semantic-interposition -mxsave -msse4.2 
> -- CMAKE_CXX_FLAGS:  -Wno-noexcept-type  -fdiagnostics-color=always -O2 
> -DNDEBUG -ftree-vectorize  -Wa,-mbig-obj -Wall -Wno-conversion 
> -Wno-sign-conversion -Wunused-result -fno-semantic-interposition -mxsave 
> -msse4.2 
> {code}
> Perhaps we can pass {{-O0}}?



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to