Commit Graph

30 Commits

Author SHA1 Message Date
Atsushi Togo 55c334e6c2 Minor code clean-up 2025-06-14 18:15:03 +09:00
Atsushi Togo 26cac3aef5 Performance optimization of reciprocal_to_normal in C 2025-06-14 18:07:46 +09:00
Atsushi Togo e4f37dba71 Zero clear of temporary array 2025-06-11 12:47:58 +09:00
Atsushi Togo cedd2477d8 Remove unused variables 2025-06-11 09:59:15 +09:00
Atsushi Togo 29cda14982 Replace memset 2025-06-11 09:56:42 +09:00
Atsushi Togo 5f75510927 Introduce memorization in eciprocal_to_normal for performance optimization 2025-06-11 09:44:34 +09:00
Atsushi Togo 2d30f9baf0 Fix comment in reciprocal_to_normal.c 2025-06-09 16:05:46 +09:00
Janosh Riebesell ece67a3201 fix typos and add codespell pre-commit hooks to catch future typos 2025-02-04 13:41:45 -05:00
Atsushi Togo 942b1f5e01 c-long was changed to int64_t. 2025-01-26 21:29:32 +09:00
Atsushi Togo 232f22318c Option to run without linking BLAS and LAPACK in C 2024-11-23 20:36:37 +09:00
Atsushi Togo e6dacb4d18 Minor refactoring 2024-04-21 14:02:28 +09:00
Atsushi Togo 924ebb9e66 Include c-header for memcpy 2024-04-20 16:42:58 +09:00
Atsushi Togo 8790ac4f02 Optimize get_fc3_sum -> get_fc3_sum_blas_like 2024-04-18 17:17:35 +09:00
Atsushi Togo 44a404abe4 Replace openmp_(at|per)_bands by (not openmp_per_triplets) in C 2024-04-18 12:55:38 +09:00
Atsushi Togo a46e234729 cblas header for mkl 2024-04-17 16:05:11 +09:00
Atsushi Togo 293ede7719 Examine BLAS for ph-ph interaction calculation 2024-04-17 15:36:26 +09:00
Atsushi Togo f28c6b1741 Minor refactoring of reciprocal_to_normal.c 2024-04-17 08:47:33 +09:00
Atsushi Togo 28e28cac85 Peformance tuning 2022-09-02 11:53:22 +09:00
Nick Papior 3635eca7be enh: major refactoring of setup.py
Instead of manually adding compilers and flags it is
now left to the user to create the appropriate site.cfg
for configuration purposes.

This is much cleaner and provides users to fully customize the build.

This also enables pip installs, for instance I can build:

   pip3 install . -vvv

Which works.
In order for pip to fully function with the numpy versions it
is important that pip uses the oldest possible numpy version
that may be pip installed. This is what oldest-supported-numpy
is for.

The PHPYOPENMP flag is not needed. The OPENMP specification states
that any C-compiler which implements preprocessor statements should
include _OPENMP when compiling with OPENMP. Therefore we simply check
for this now. I don't know of any compilers that do not define this
flag while compiling for openmp.

When retrieving MKL from numpy there is an additional macro defined:
  SCIPY_MKL_H
so now the code checks for either this macro, or the old one (MKL_LAPACKE).

I have removed support for distutils. It is far deprecated and no installations
should use this one. So better to not rely on it.
In fact it was never used since pyproject.toml had setuptools as a requirement for
building the package. So it couldn't be used in these environments in
any case.

If this is to be adopted, then the installation documentation should be updated.
2021-12-07 10:18:55 +01:00
Atsushi Togo 69122431e7 Refactoring 2021-11-02 22:08:54 +09:00
Atsushi Togo 7fe6007f90 Memory layout of fc3_reciprocal was reorderd. 2021-08-03 12:01:54 +09:00
Atsushi Togo c3b7724b98 Fix a bug introduced in the last commit. 2021-08-03 09:56:15 +09:00
Atsushi Togo 1451255733 Include inv-sqrt mass in copy of eigvecs. 2021-08-03 09:22:06 +09:00
Atsushi Togo 894e698a60 Performance tuning in reciprocal to normal fc3. 2021-08-01 12:20:51 +09:00
Atsushi Togo 1be2a1c004 Added #ifdef PHPYOPENMP for all pragma 2021-04-12 18:24:48 +09:00
Atsushi Togo af42b5206a Add grid system module in c 2021-04-07 21:51:06 +09:00
Atsushi Togo 5115478996 Removed LAGCONST from phono3c 2021-03-15 13:02:18 +09:00
Atsushi Togo 73e6b625e3 int -> long in _phono3py.c under way 2021-02-22 19:32:55 +09:00
Atsushi Togo 38ef33df25 size_t -> long for triplets related integer values 2021-02-22 12:46:31 +09:00
Atsushi Togo 9d0f335e38 Move c files on a flat directory 2021-01-26 11:10:19 +09:00