Skip to content

Commit c66c5a9

Browse files
committed
Merge branch 'develop' of https://github.com/PaddlePaddle/Paddle into rewrite_multi_gru
2 parents 9722a2f + 8ac05c0 commit c66c5a9

File tree

1,455 files changed

+47396
-20265
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,455 files changed

+47396
-20265
lines changed

.flake8

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,26 +6,32 @@ exclude =
66
# https://github.com/PaddlePaddle/Paddle/pull/46290#discussion_r976392010
77
./python/paddle/fluid/[!t]**,
88
./python/paddle/fluid/tra**,
9-
# Exclude auto-generated files
10-
*_pb2.py,
119
# Exclude third-party libraries
1210
./python/paddle/utils/gast/**,
1311
# Exclude files that will be removed in the future, see more at
1412
# https://github.com/PaddlePaddle/Paddle/pull/46782#issuecomment-1273033731
1513
./python/paddle/fluid/tests/unittests/npu/**,
1614
./python/paddle/fluid/tests/unittests/mlu/**
1715
ignore =
18-
# E, see https://pycodestyle.pycqa.org/en/latest/intro.html#error-codes
16+
# Whitespace before ‘,’, ‘;’, or ‘:’, it is not compatible with black
1917
E203,
18+
# Module level import not at top of file
2019
E402,
20+
# Line too long (82 > 79 characters)
2121
E501,
22-
E721,E722,E731,E741,
23-
24-
# F, see https://flake8.pycqa.org/en/latest/user/error-codes.html
22+
# Do not compare types, use `isinstance()`
23+
E721,
24+
# Do not use bare except, specify exception instead
25+
E722,
26+
# Do not assign a lambda expression, use a def
27+
E731,
28+
# Do not use variables named ‘l’, ‘O’, or ‘I’
29+
E741,
30+
# `name` may be undefined, or defined from star imports: `module`
2531
F405,
32+
# Local variable name is assigned to but never used
2633
F841,
27-
28-
# W, see https://pycodestyle.pycqa.org/en/latest/intro.html#error-codes
34+
# Line break before binary operator, it is not compatible with black
2935
W503
3036
per-file-ignores =
3137
# These files need tabs for testing.

.gitignore

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,18 +9,25 @@ paddle/fluid/operators/ops_extra_info.cc
99
paddle/phi/api/backward/backward_api.h
1010
paddle/phi/api/backward/sparse_bw_api.h
1111
paddle/phi/api/include/api.h
12+
paddle/phi/api/include/operants_base.h
13+
paddle/phi/api/include/operants_manager.h
1214
paddle/phi/api/include/sparse_api.h
1315
paddle/phi/api/include/strings_api.h
16+
paddle/phi/api/include/tensor_operants.h
1417
paddle/phi/api/lib/api.cc
1518
paddle/phi/api/lib/dygraph_api.*
1619
paddle/phi/api/lib/backward_api.cc
20+
paddle/phi/api/lib/operants_manager.cc
1721
paddle/phi/api/lib/sparse_api.cc
1822
paddle/phi/api/lib/strings_api.cc
1923
paddle/phi/api/lib/sparse_bw_api.cc
24+
paddle/phi/api/lib/tensor_api.cc
25+
paddle/phi/api/lib/tensor_operants.cc
2026
paddle/phi/extension.h
2127
paddle/phi/include/*
2228
paddle/phi/infermeta/generated.*
23-
29+
paddle/fluid/prim/api/generated_prim/*.cc
30+
paddle/fluid/prim/api/generated_prim/*.h
2431
*.DS_Store
2532
*.vs
2633
build/
@@ -74,7 +81,7 @@ paddle/fluid/pybind/eager_op_function.cc
7481
tools/nvcc_lazy
7582

7683
# these files (directories) are generated before build system generation
77-
paddle/fluid/operators/generated_op.cc
84+
paddle/fluid/operators/generated_op*.cc
7885
paddle/fluid/operators/generated_sparse_op.cc
7986
paddle/fluid/operators/generated_static_op.cc
8087
paddle/phi/ops/compat/generated_*.cc
@@ -85,3 +92,6 @@ paddle/fluid/pybind/eager_op_function_impl.h
8592
paddle/fluid/pybind/eager_op_function_impl.h
8693
paddle/fluid/pybind/op_function_impl.h
8794
paddle/fluid/pybind/*final_state_op_function_impl.h
95+
paddle/fluid/prim/api/generated/prim_api/*
96+
paddle/fluid/framework/__init__.py
97+
python/paddle/incubate/fleet/parameter_server/pslib/ps_pb2.py

.pre-commit-config.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ exclude: |
55
paddle/fluid/framework/fleet/heter_ps/cudf/.+|
66
paddle/fluid/distributed/ps/thirdparty/round_robin.h|
77
python/paddle/utils/gast/.+|
8-
.+_pb2\.py|
98
python/paddle/fluid/tests/unittests/npu/.+|
109
python/paddle/fluid/tests/unittests/mlu/.+
1110
)$
@@ -65,9 +64,10 @@ repos:
6564
hooks:
6665
- id: isort
6766
- repo: https://github.com/PyCQA/flake8
68-
rev: 4.0.1
67+
rev: 5.0.4
6968
hooks:
7069
- id: flake8
70+
args: ["--config=.flake8"]
7171
- repo: https://github.com/PyCQA/autoflake
7272
rev: v1.7.7
7373
hooks:

AUTHORS.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,9 @@ This is an incomplete list of authors of [Paddle](https://github.com/PaddlePaddl
2929
| Haichao-Zhang | Hai-Chao Zhang |
3030
| hedaoyuan | Dao-Yuan He |
3131
| helinwang | He-Lin Wang |
32+
| heliqi | Li-Qi He |
3233
| houj04 | HOU Jue |
34+
| HulekJakub | Jakub Hulek |
3335
| jacquesqiao | Long-Fei Qiao |
3436
| [jakpiase](https://raw.githubusercontent.com/jakpiase/Paddle/new_paddle_intel_authors/img/img.jpg) | Jakub Piasecki |
3537
| [jczaja](https://raw.githubusercontent.com/jakpiase/Paddle/new_paddle_intel_authors/img/img.jpg) | Jacek Czaja |

cmake/external/brpc.cmake

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ find_package(OpenSSL REQUIRED)
1818

1919
message(STATUS "ssl:" ${OPENSSL_SSL_LIBRARY})
2020
message(STATUS "crypto:" ${OPENSSL_CRYPTO_LIBRARY})
21+
message(STATUS "WITH_SNAPPY:" ${WITH_SNAPPRY})
2122

2223
add_library(ssl SHARED IMPORTED GLOBAL)
2324
set_property(TARGET ssl PROPERTY IMPORTED_LOCATION ${OPENSSL_SSL_LIBRARY})

cmake/external/cinn.cmake

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@ if(NOT WITH_CINN)
1717
endif()
1818

1919
if(NOT CINN_GIT_TAG)
20-
# 2023.02.09 commit
21-
set(CINN_GIT_TAG 63cf4267a0f8756df61b0dca5fb30bf3748ba2f4)
20+
# 2023.02.16 commit
21+
set(CINN_GIT_TAG ec7f1a87b195b9586e69f9f30a2b647dcf8b9def)
2222
endif()
2323

2424
message(STATUS "CINN version: " ${CINN_GIT_TAG})

cmake/external/cutlass.cmake

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,10 @@ include_directories(
2626

2727
add_definitions("-DPADDLE_WITH_CUTLASS")
2828

29+
if(NOT PYTHON_EXECUTABLE)
30+
find_package(PythonInterp REQUIRED)
31+
endif()
32+
2933
ExternalProject_Add(
3034
extern_cutlass
3135
${EXTERNAL_PROJECT_LOG_ARGS} ${SHALLOW_CLONE}
@@ -34,7 +38,14 @@ ExternalProject_Add(
3438
PREFIX ${CUTLASS_PREFIX_DIR}
3539
UPDATE_COMMAND ""
3640
CONFIGURE_COMMAND ""
37-
BUILD_COMMAND ""
41+
BUILD_COMMAND
42+
mkdir -p
43+
${CMAKE_SOURCE_DIR}/paddle/phi/kernels/sparse/gpu/cutlass/build/generated/gemm
44+
&& ${PYTHON_EXECUTABLE} -B
45+
${CMAKE_SOURCE_DIR}/paddle/phi/kernels/sparse/gpu/cutlass/gather_gemm_scatter_generator.py
46+
"${THIRD_PARTY_PATH}/cutlass/src/extern_cutlass/tools/library/scripts/"
47+
"${CMAKE_SOURCE_DIR}/paddle/phi/kernels/sparse/gpu/cutlass/build"
48+
"${CMAKE_CUDA_COMPILER_VERSION}"
3849
INSTALL_COMMAND ""
3950
TEST_COMMAND "")
4051

cmake/external/flashattn.cmake

Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,108 @@
1+
# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved.
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
include(ExternalProject)
16+
17+
add_definitions(-DPADDLE_WITH_FLASHATTN)
18+
19+
set(FLASHATTN_PREFIX_DIR ${THIRD_PARTY_PATH}/flashattn)
20+
set(FLASHATTN_SOURCE_SUBDIR csrc/flash_attn)
21+
set(FLASHATTN_INSTALL_DIR ${THIRD_PARTY_PATH}/install/flashattn)
22+
set(FLASHATTN_REPOSITORY ${GIT_URL}/PaddlePaddle/flash-attention.git)
23+
set(FLASHATTN_TAG f0edf243a813a65d05c75fcb331b2a95faf96bbc)
24+
25+
set(FLASHATTN_INCLUDE_DIR
26+
"${FLASHATTN_INSTALL_DIR}/include"
27+
CACHE PATH "flash-attn Directory" FORCE)
28+
set(FLASHATTN_LIB_DIR
29+
"${FLASHATTN_INSTALL_DIR}/lib"
30+
CACHE PATH "flash-attn Library Directory" FORCE)
31+
32+
if(WIN32)
33+
set(FLASHATTN_LIBRARIES
34+
"${FLASHATTN_INSTALL_DIR}/bin/flashattn${CMAKE_SHARED_LIBRARY_SUFFIX}"
35+
CACHE FILEPATH "flash-attn Library" FORCE)
36+
else()
37+
set(FLASHATTN_LIBRARIES
38+
"${FLASHATTN_INSTALL_DIR}/lib/libflashattn${CMAKE_SHARED_LIBRARY_SUFFIX}"
39+
CACHE FILEPATH "flash-attn Library" FORCE)
40+
endif()
41+
42+
if(CMAKE_CXX_COMPILER_ID STREQUAL "Clang"
43+
OR CMAKE_CXX_COMPILER_ID STREQUAL "AppleClang"
44+
OR WIN32)
45+
set(USE_OMP OFF)
46+
else()
47+
set(USE_OMP ON)
48+
endif()
49+
50+
if(WIN32)
51+
set(FLASHATTN_C_FLAGS $<FILTER:${CMAKE_C_FLAGS},EXCLUDE,/Zc:inline>)
52+
set(FLASHATTN_C_FLAGS_DEBUG
53+
$<FILTER:${CMAKE_C_FLAGS_DEBUG},EXCLUDE,/Zc:inline>)
54+
set(FLASHATTN_C_FLAGS_RELEASE
55+
$<FILTER:${CMAKE_C_FLAGS_RELEASE},EXCLUDE,/Zc:inline>)
56+
set(FLASHATTN_CXX_FLAGS $<FILTER:${CMAKE_CXX_FLAGS},EXCLUDE,/Zc:inline>)
57+
set(FLASHATTN_CXX_FLAGS_RELEASE
58+
$<FILTER:${CMAKE_CXX_FLAGS_RELEASE},EXCLUDE,/Zc:inline>)
59+
set(FLASHATTN_CXX_FLAGS_DEBUG
60+
$<FILTER:${CMAKE_CXX_FLAGS_DEBUG},EXCLUDE,/Zc:inline>)
61+
else()
62+
set(FLASHATTN_C_FLAGS ${CMAKE_C_FLAGS})
63+
set(FLASHATTN_C_FLAGS_DEBUG ${CMAKE_C_FLAGS_DEBUG})
64+
set(FLASHATTN_C_FLAGS_RELEASE ${CMAKE_C_FLAGS_RELEASE})
65+
set(FLASHATTN_CXX_FLAGS ${CMAKE_CXX_FLAGS})
66+
set(FLASHATTN_CXX_FLAGS_RELEASE ${CMAKE_CXX_FLAGS_RELEASE})
67+
set(FLASHATTN_CXX_FLAGS_DEBUG ${CMAKE_CXX_FLAGS_DEBUG})
68+
endif()
69+
70+
ExternalProject_Add(
71+
extern_flashattn
72+
${EXTERNAL_PROJECT_LOG_ARGS} ${SHALLOW_CLONE}
73+
GIT_REPOSITORY ${FLASHATTN_REPOSITORY}
74+
GIT_TAG ${FLASHATTN_TAG}
75+
PREFIX ${FLASHATTN_PREFIX_DIR}
76+
SOURCE_SUBDIR ${FLASHATTN_SOURCE_SUBDIR}
77+
UPDATE_COMMAND ""
78+
PATCH_COMMAND ""
79+
#BUILD_ALWAYS 1
80+
CMAKE_ARGS -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
81+
-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
82+
-DCMAKE_C_FLAGS=${FLASHATTN_C_FLAGS}
83+
-DCMAKE_C_FLAGS_DEBUG=${FLASHATTN_C_FLAGS_DEBUG}
84+
-DCMAKE_C_FLAGS_RELEASE=${FLASHATTN_C_FLAGS_RELEASE}
85+
-DCMAKE_CXX_FLAGS=${FLASHATTN_CXX_FLAGS}
86+
-DCMAKE_CXX_FLAGS_RELEASE=${FLASHATTN_CXX_FLAGS_RELEASE}
87+
-DCMAKE_CXX_FLAGS_DEBUG=${FLASHATTN_CXX_FLAGS_DEBUG}
88+
-DCMAKE_INSTALL_PREFIX=${FLASHATTN_INSTALL_DIR}
89+
-DWITH_GPU=${WITH_GPU}
90+
-DWITH_ROCM=${WITH_ROCM}
91+
-DWITH_OMP=${USE_OMP}
92+
-DBUILD_SHARED=ON
93+
-DCMAKE_POSITION_INDEPENDENT_CODE=ON
94+
-DCMAKE_BUILD_TYPE=${THIRD_PARTY_BUILD_TYPE}
95+
${EXTERNAL_OPTIONAL_ARGS}
96+
CMAKE_CACHE_ARGS
97+
-DCMAKE_BUILD_TYPE:STRING=${THIRD_PARTY_BUILD_TYPE}
98+
-DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=ON
99+
-DCMAKE_INSTALL_PREFIX:PATH=${FLASHATTN_INSTALL_DIR}
100+
BUILD_BYPRODUCTS ${FLASHATTN_LIBRARIES})
101+
102+
message(STATUS "flash-attn library: ${FLASHATTN_LIBRARIES}")
103+
get_filename_component(FLASHATTN_LIBRARY_PATH ${FLASHATTN_LIBRARIES} DIRECTORY)
104+
include_directories(${FLASHATTN_INCLUDE_DIR})
105+
106+
add_library(flashattn INTERFACE)
107+
#set_property(TARGET flashattn PROPERTY IMPORTED_LOCATION ${FLASHATTN_LIBRARIES})
108+
add_dependencies(flashattn extern_flashattn)

cmake/external/mkldnn.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ set(MKLDNN_INC_DIR
2121
"${MKLDNN_INSTALL_DIR}/include"
2222
CACHE PATH "mkldnn include directory." FORCE)
2323
set(MKLDNN_REPOSITORY ${GIT_URL}/oneapi-src/oneDNN.git)
24-
set(MKLDNN_TAG 9b186765dded79066e0cd9c17eb70b680b76fb8e)
24+
set(MKLDNN_TAG 2089770c4818be8933c5e9d1dd3cbaeba1457667)
2525

2626
# Introduce variables:
2727
# * CMAKE_INSTALL_LIBDIR

cmake/external/protobuf.cmake

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -248,8 +248,13 @@ function(build_protobuf TARGET_NAME BUILD_FOR_HOST)
248248
# Change the tag to support building with vs2019
249249
set(PROTOBUF_TAG 01a05a53f40ca2ac5f0af10c6cc0810bee39b792)
250250
else()
251-
set(PROTOBUF_REPOSITORY ${GIT_URL}/protocolbuffers/protobuf.git)
252-
set(PROTOBUF_TAG v21.12)
251+
if(WITH_PSLIB)
252+
set(PROTOBUF_REPOSITORY "https://github.com/google/protobuf.git")
253+
set(PROTOBUF_TAG "9f75c5aa851cd877fb0d93ccc31b8567a6706546")
254+
else()
255+
set(PROTOBUF_REPOSITORY ${GIT_URL}/protocolbuffers/protobuf.git)
256+
set(PROTOBUF_TAG v21.12)
257+
endif()
253258
if(WITH_GPU)
254259
if(${CMAKE_CUDA_COMPILER_VERSION} LESS 12.0
255260
AND ${CMAKE_CXX_COMPILER_VERSION} VERSION_GREATER 12.0)
@@ -326,6 +331,9 @@ elseif(WITH_IPU)
326331
set(PROTOBUF_VERSION 21.12)
327332
elseif(WITH_ARM_BRPC)
328333
set(PROTOBUF_VERSION 21.12-baidu-ee-common)
334+
elseif(WIN32)
335+
#Lower version prootbuf is used for widows
336+
set(PROTOBUF_VERSION 3.2)
329337
else()
330338
set(PROTOBUF_VERSION 21.12)
331339
if(WITH_GPU)

cmake/external/pslib.cmake

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,15 @@ if((NOT DEFINED PSLIB_VER) OR (NOT DEFINED PSLIB_URL))
2323
set(PSLIB_NAME
2424
"pslib"
2525
CACHE STRING "" FORCE)
26-
set(PSLIB_URL
27-
"https://pslib.bj.bcebos.com/pslib.tar.gz"
28-
CACHE STRING "" FORCE)
26+
if(NOT WITH_HETERPS)
27+
set(PSLIB_URL
28+
"https://pslib.bj.bcebos.com/pslib.tar.gz"
29+
CACHE STRING "" FORCE)
30+
else()
31+
set(PSLIB_URL
32+
"https://pslib.bj.bcebos.com/pslib_3631b2/pslib.tar.gz"
33+
CACHE STRING "" FORCE)
34+
endif()
2935
endif()
3036
message(STATUS "PSLIB_NAME: ${PSLIB_NAME}, PSLIB_URL: ${PSLIB_URL}")
3137
set(PSLIB_PREFIX_DIR "${THIRD_PARTY_PATH}/pslib")
@@ -67,3 +73,4 @@ ExternalProject_Add(
6773
add_library(pslib SHARED IMPORTED GLOBAL)
6874
set_property(TARGET pslib PROPERTY IMPORTED_LOCATION ${PSLIB_LIB})
6975
add_dependencies(pslib ${PSLIB_PROJECT})
76+
target_link_libraries(pslib INTERFACE ${PSLIB_LIB_DIR}/libjvm.so)

cmake/external/xpu.cmake

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ set(XPU_PROJECT "extern_xpu")
77
set(XPU_API_LIB_NAME "libxpuapi.so")
88
set(XPU_RT_LIB_NAME "libxpurt.so")
99

10-
set(XPU_BASE_DATE "20230119")
11-
set(XPU_XCCL_BASE_VERSION "1.0.7")
10+
set(XPU_BASE_DATE "20230227")
11+
set(XPU_XCCL_BASE_VERSION "1.0.10")
1212

1313
if(NOT DEFINED XPU_BASE_URL)
1414
set(XPU_BASE_URL_WITHOUT_DATE

cmake/flags.cmake

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -149,6 +149,7 @@ if(NOT WIN32)
149149
-Wno-unused-parameter
150150
-Wno-unused-function
151151
-Wno-error=literal-suffix
152+
-Wno-error=array-bounds #Warning in Eigen, gcc 12.2
152153
-Wno-error=ignored-attributes # Warnings in Eigen, gcc 6.3
153154
-Wno-error=terminate # Warning in PADDLE_ENFORCE
154155
-Wno-error=int-in-bool-context # Warning in Eigen gcc 7.2

cmake/inference_lib.cmake

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -439,7 +439,7 @@ copy(
439439
DSTS ${dst_dir}/${module}/allocation)
440440

441441
set(module "platform")
442-
set(platform_lib_deps profiler_proto errors)
442+
set(platform_lib_deps phi_profiler_proto errors)
443443
if(WITH_GPU)
444444
set(platform_lib_deps ${platform_lib_deps} external_error_proto)
445445
endif()
@@ -448,10 +448,8 @@ add_dependencies(fluid_lib_dist ${platform_lib_deps})
448448
copy(
449449
fluid_lib_dist
450450
SRCS ${src_dir}/${module}/*.h ${src_dir}/${module}/dynload/*.h
451-
${src_dir}/${module}/details/*.h
452-
${PADDLE_BINARY_DIR}/paddle/fluid/platform/*.pb.h
453-
DSTS ${dst_dir}/${module} ${dst_dir}/${module}/dynload
454-
${dst_dir}/${module}/details ${dst_dir}/${module})
451+
${PADDLE_BINARY_DIR}/paddle/phi/api/profiler/*.pb.h
452+
DSTS ${dst_dir}/${module} ${dst_dir}/${module}/dynload ${dst_dir}/${module})
455453

456454
set(module "string")
457455
copy(

cmake/third_party.cmake

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -301,7 +301,7 @@ if(TARGET extern_protobuf)
301301
list(APPEND third_party_deps extern_protobuf)
302302
endif()
303303

304-
if(WITH_PYTHON)
304+
if(NOT ((NOT WITH_PYTHON) AND ON_INFER))
305305
include(external/python) # find python and python_module
306306
include(external/pybind11) # download pybind11
307307
list(APPEND third_party_deps extern_pybind)
@@ -531,6 +531,9 @@ if(WITH_GPU
531531
include(external/cutlass) # download, build, install cusparselt
532532
list(APPEND third_party_deps extern_cutlass)
533533
set(WITH_CUTLASS ON)
534+
include(external/flashattn)
535+
list(APPEND third_party_deps extern_flashattn)
536+
set(WITH_FLASHATTN ON)
534537
endif()
535538
endif()
536539

paddle/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ add_subdirectory(ir)
3333

3434
# Next, (to be discusssed)
3535
# (1) move all source files to same folder,
36-
# (2) naturally, and and configure tests in only one `CMakeLists.txt`,
36+
# (2) naturally, and configure tests in only one `CMakeLists.txt`,
3737
# (3) cc tests support linking pre-built dynamic libraries. For example, use the dynamic
3838
# library in the installed paddle by `pip`.
3939

0 commit comments

Comments
 (0)