Skip to content

Commit

Permalink
bug fixes for ssids_enquire and ssids_alter
Browse files Browse the repository at this point in the history
bug fixes for fdc
preparation for incomming new packages including addition to supported lapack
  • Loading branch information
dalekopera committed Jan 23, 2025
1 parent 29d8a06 commit 5230165
Show file tree
Hide file tree
Showing 20 changed files with 692 additions and 63 deletions.
19 changes: 19 additions & 0 deletions include/galahad_lapack.h
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@
#define DGEQP3 GALAHAD_SGEQP3_64
#define DGEQR2 GALAHAD_SGEQR2_64
#define DGEQRF GALAHAD_SGEQRF_64
#define DGESV GALAHAD_SGESV_64
#define DGESVD GALAHAD_SGESVD_64
#define DGETF2 GALAHAD_SGETF2_64
#define DGETRF GALAHAD_SGETRF_64
Expand Down Expand Up @@ -188,6 +189,7 @@
#define DGEQP3 SGEQP364
#define DGEQR2 SGEQR264
#define DGEQRF SGEQRF64
#define DGESV SGESV64
#define DGESVD SGESVD64
#define DGETF2 SGETF264
#define DGETRF SGETRF64
Expand Down Expand Up @@ -321,6 +323,7 @@
#define DGEQP3 SGEQP3__64
#define DGEQR2 SGEQR2__64
#define DGEQRF SGEQRF__64
#define DGESV SGESV__64
#define DGESVD SGESVD__64
#define DGETF2 SGETF2__64
#define DGETRF SGETRF__64
Expand Down Expand Up @@ -454,6 +457,7 @@
#define DGEQP3 SGEQP3
#define DGEQR2 SGEQR2
#define DGEQRF SGEQRF
#define DGESV SGESV
#define DGESVD SGESVD
#define DGETF2 SGETF2
#define DGETRF SGETRF
Expand Down Expand Up @@ -587,6 +591,7 @@
#define DGEQP3 SGEQP3_64
#define DGEQR2 SGEQR2_64
#define DGEQRF SGEQRF_64
#define DGESV SGESV_64
#define DGESVD SGESVD_64
#define DGETF2 SGETF2_64
#define DGETRF SGETRF_64
Expand Down Expand Up @@ -724,6 +729,7 @@
#define DGEQP3 GALAHAD_SGEQP3
#define DGEQR2 GALAHAD_SGEQR2
#define DGEQRF GALAHAD_SGEQRF
#define DGESV GALAHAD_SGESV
#define DGESVD GALAHAD_SGESVD
#define DGETF2 GALAHAD_SGETF2
#define DGETRF GALAHAD_SGETRF
Expand Down Expand Up @@ -857,6 +863,7 @@
#define DGEQP3 SGEQP3
#define DGEQR2 SGEQR2
#define DGEQRF SGEQRF
#define DGESV SGESV
#define DGESVD SGESVD
#define DGETF2 SGETF2
#define DGETRF SGETRF
Expand Down Expand Up @@ -996,6 +1003,7 @@
#define DGEQP3 GALAHAD_QGEQP3_64
#define DGEQR2 GALAHAD_QGEQR2_64
#define DGEQRF GALAHAD_QGEQRF_64
#define DGESV GALAHAD_QGESV_64
#define DGESVD GALAHAD_QGESVD_64
#define DGETF2 GALAHAD_QGETF2_64
#define DGETRF GALAHAD_QGETRF_64
Expand Down Expand Up @@ -1130,6 +1138,7 @@
#define DGEQP3 QGEQP364
#define DGEQR2 QGEQR264
#define DGEQRF QGEQRF64
#define DGESV QGESV64
#define DGESVD QGESVD64
#define DGETF2 QGETF264
#define DGETRF QGETRF64
Expand Down Expand Up @@ -1263,6 +1272,7 @@
#define DGEQP3 QGEQP3__64
#define DGEQR2 QGEQR2__64
#define DGEQRF QGEQRF__64
#define DGESV QGESV__64
#define DGESVD QGESVD__64
#define DGETF2 QGETF2__64
#define DGETRF QGETRF__64
Expand Down Expand Up @@ -1396,6 +1406,7 @@
#define DGEQP3 QGEQP3
#define DGEQR2 QGEQR2
#define DGEQRF QGEQRF
#define DGESV QGESV
#define DGESVD QGESVD
#define DGETF2 QGETF2
#define DGETRF QGETRF
Expand Down Expand Up @@ -1529,6 +1540,7 @@
#define DGEQP3 QGEQP3_64
#define DGEQR2 QGEQR2_64
#define DGEQRF QGEQRF_64
#define DGESV QGESV_64
#define DGESVD QGESVD_64
#define DGETF2 QGETF2_64
#define DGETRF QGETRF_64
Expand Down Expand Up @@ -1666,6 +1678,7 @@
#define DGEQP3 GALAHAD_QGEQP3
#define DGEQR2 GALAHAD_QGEQR2
#define DGEQRF GALAHAD_QGEQRF
#define DGESV GALAHAD_QGESV
#define DGESVD GALAHAD_QGESVD
#define DGETF2 GALAHAD_QGETF2
#define DGETRF GALAHAD_QGETRF
Expand Down Expand Up @@ -1799,6 +1812,7 @@
#define DGEQP3 QGEQP3
#define DGEQR2 QGEQR2
#define DGEQRF QGEQRF
#define DGESV QGESV
#define DGESVD QGESVD
#define DGETF2 QGETF2
#define DGETRF QGETRF
Expand Down Expand Up @@ -1938,6 +1952,7 @@
#define DGEQP3 GALAHAD_DGEQP3_64
#define DGEQR2 GALAHAD_DGEQR2_64
#define DGEQRF GALAHAD_DGEQRF_64
#define DGESV GALAHAD_DGESV_64
#define DGESVD GALAHAD_DGESVD_64
#define DGETF2 GALAHAD_DGETF2_64
#define DGETRF GALAHAD_DGETRF_64
Expand Down Expand Up @@ -2072,6 +2087,7 @@
#define DGEQP3 DGEQP364
#define DGEQR2 DGEQR264
#define DGEQRF DGEQRF64
#define DGESV DGESV64
#define DGESVD DGESVD64
#define DGETF2 DGETF264
#define DGETRF DGETRF64
Expand Down Expand Up @@ -2205,6 +2221,7 @@
#define DGEQP3 DGEQP3__64
#define DGEQR2 DGEQR2__64
#define DGEQRF DGEQRF__64
#define DGESV DGESV__64
#define DGESVD DGESVD__64
#define DGETF2 DGETF2__64
#define DGETRF DGETRF__64
Expand Down Expand Up @@ -2339,6 +2356,7 @@
#define DGEQP3 DGEQP3_64
#define DGEQR2 DGEQR2_64
#define DGEQRF DGEQRF_64
#define DGESV DGESV_64
#define DGESVD DGESVD_64
#define DGETF2 DGETF2_64
#define DGETRF DGETRF_64
Expand Down Expand Up @@ -2476,6 +2494,7 @@
#define DGEQP3 GALAHAD_DGEQP3
#define DGEQR2 GALAHAD_DGEQR2
#define DGEQRF GALAHAD_DGEQRF
#define DGESV GALAHAD_DGESV
#define DGESVD GALAHAD_DGESVD
#define DGETF2 GALAHAD_DGETF2
#define DGETRF GALAHAD_DGETRF
Expand Down
14 changes: 10 additions & 4 deletions include/galahad_modules_double.h
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,9 @@
#define GALAHAD_DLP_precision GALAHAD_DLP_double_64
#define GALAHAD_DPS_precision GALAHAD_DPS_double_64
#define GALAHAD_DQP_precision GALAHAD_DQP_double_64
#define GALAHAD_EQP_precision GALAHAD_EQP_double_64
#define GALAHAD_EKS_precision GALAHAD_EKS_double_64
#define GALAHAD_EPF_precision GALAHAD_EPF_double_64
#define GALAHAD_EQP_precision GALAHAD_EQP_double_64
#define GALAHAD_ERMO_precision GALAHAD_ERMO_double_64
#define GALAHAD_EXTEND_precision GALAHAD_EXTEND_double_64
#define GALAHAD_FASTR_precision GALAHAD_FASTR_double_64
Expand Down Expand Up @@ -156,8 +157,9 @@
#define GALAHAD_USEDLP_precision GALAHAD_USEDLP_double_64
#define GALAHAD_USEDPS_precision GALAHAD_USEDPS_double_64
#define GALAHAD_USEDQP_precision GALAHAD_USEDQP_double_64
#define GALAHAD_USEEQP_precision GALAHAD_USEEQP_double_64
#define GALAHAD_USEEKS_precision GALAHAD_USEEKS_double_64

This comment has been minimized.

Copy link
@amontoison

amontoison Jan 24, 2025

Member

@nimgould I think that you broke GALAHAD with a sed command.

This comment has been minimized.

Copy link
@nimgould

nimgould Jan 24, 2025

Contributor

Actions suggest that I defintely broke something! All the C tests pass with the Makefile version, so I suspect something is not being set properly for the meson tests. I did update the C includes so that now C structures have precision-dependent names, but since this works under make, I am not sure that is the issue.

Many of the actions tests seem to fail with a free(): invalid pointer message. I'll try a virgin install here next

This comment has been minimized.

Copy link
@nimgould

nimgould Jan 24, 2025

Contributor

Ah, ok, I get free() invalid pointers here too on a virgin install, so I will investigate now that I can do it using makefiles

This comment has been minimized.

Copy link
@amontoison

amontoison Jan 24, 2025

Member

I don't understand why you changed the preprocessing macros for EQP when I checked the diff:
5230165

Is it entended?

This comment has been minimized.

Copy link
@nimgould

nimgould Jan 24, 2025

Contributor

Yes, all I did was put them in alphabetical order

This comment has been minimized.

Copy link
@nimgould

nimgould Jan 24, 2025

Contributor

There is still a bug in ssids that I am tracking ... stupid unreadable
c++

This comment has been minimized.

Copy link
@amontoison

amontoison Jan 24, 2025

Member

Yes, ssids is a can of worms...
I quickly checked your commit Nick and I like this new routines in SLS to detect what are the available solvers.

I suggest to also check if the two environment variables of OpenMP are well defined by the user for SSIDS.

This comment has been minimized.

Copy link
@nimgould

nimgould Jan 24, 2025

Contributor

Yes, I was planning to do this as the code fails with the NAG compiler as it doesn't recognise them. But actually, it is the compiler that is at fault

#define GALAHAD_USEEPF_precision GALAHAD_USEEPF_double_64
#define GALAHAD_USEEQP_precision GALAHAD_USEEQP_double_64
#define GALAHAD_USEERMO_precision GALAHAD_USEERMO_double_64
#define GALAHAD_USEFASTR_precision GALAHAD_USEFASTR_double_64
#define GALAHAD_USEFDH_precision GALAHAD_USEFDH_double_64
Expand Down Expand Up @@ -357,6 +359,7 @@
#define RUNTRACE_SIF_precision RUNTRACE_SIF_double_64
#define RUNTRAL_SIF_precision RUNTRAL_SIF_double_64
#define RUNCQPS_SIF_precision RUNCQPS_SIF_double_64
#define RUNEKS_SIF_precision RUNEKS_SIF_double_64
#define RUNEPF_SIF_precision RUNEPF_SIF_double_64
#define RUNERMO_SIF_precision RUNERMO_SIF_double_64
#define RUNFASTR_SIF_precision RUNFASTR_SIF_double_64
Expand Down Expand Up @@ -427,8 +430,9 @@
#define GALAHAD_DLP_precision GALAHAD_DLP_double
#define GALAHAD_DPS_precision GALAHAD_DPS_double
#define GALAHAD_DQP_precision GALAHAD_DQP_double
#define GALAHAD_EQP_precision GALAHAD_EQP_double
#define GALAHAD_EKS_precision GALAHAD_EKS_double
#define GALAHAD_EPF_precision GALAHAD_EPF_double
#define GALAHAD_EQP_precision GALAHAD_EQP_double
#define GALAHAD_ERMO_precision GALAHAD_ERMO_double
#define GALAHAD_EXTEND_precision GALAHAD_EXTEND_double
#define GALAHAD_FASTR_precision GALAHAD_FASTR_double
Expand Down Expand Up @@ -551,8 +555,9 @@
#define GALAHAD_USEDLP_precision GALAHAD_USEDLP_double
#define GALAHAD_USEDPS_precision GALAHAD_USEDPS_double
#define GALAHAD_USEDQP_precision GALAHAD_USEDQP_double
#define GALAHAD_USEEQP_precision GALAHAD_USEEQP_double
#define GALAHAD_USEEKS_precision GALAHAD_USEEKS_double
#define GALAHAD_USEEPF_precision GALAHAD_USEEPF_double
#define GALAHAD_USEEQP_precision GALAHAD_USEEQP_double
#define GALAHAD_USEERMO_precision GALAHAD_USEERMO_double
#define GALAHAD_USEFASTR_precision GALAHAD_USEFASTR_double
#define GALAHAD_USEFDH_precision GALAHAD_USEFDH_double
Expand Down Expand Up @@ -752,6 +757,7 @@
#define RUNTRACE_SIF_precision RUNTRACE_SIF_double
#define RUNTRAL_SIF_precision RUNTRAL_SIF_double
#define RUNCQPS_SIF_precision RUNCQPS_SIF_double
#define RUNEKS_SIF_precision RUNEKS_SIF_double
#define RUNEPF_SIF_precision RUNEPF_SIF_double
#define RUNERMO_SIF_precision RUNERMO_SIF_double
#define RUNFASTR_SIF_precision RUNFASTR_SIF_double
Expand Down
14 changes: 10 additions & 4 deletions include/galahad_modules_quadruple.h
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,9 @@
#define GALAHAD_DLP_precision GALAHAD_DLP_quadruple_64
#define GALAHAD_DPS_precision GALAHAD_DPS_quadruple_64
#define GALAHAD_DQP_precision GALAHAD_DQP_quadruple_64
#define GALAHAD_EQP_precision GALAHAD_EQP_quadruple_64
#define GALAHAD_EKS_precision GALAHAD_EKS_quadruple_64
#define GALAHAD_EPF_precision GALAHAD_EPF_quadruple_64
#define GALAHAD_EQP_precision GALAHAD_EQP_quadruple_64
#define GALAHAD_ERMO_precision GALAHAD_ERMO_quadruple_64
#define GALAHAD_EXTEND_precision GALAHAD_EXTEND_quadruple_64
#define GALAHAD_FASTR_precision GALAHAD_FASTR_quadruple_64
Expand Down Expand Up @@ -156,8 +157,9 @@
#define GALAHAD_USEDLP_precision GALAHAD_USEDLP_quadruple_64
#define GALAHAD_USEDPS_precision GALAHAD_USEDPS_quadruple_64
#define GALAHAD_USEDQP_precision GALAHAD_USEDQP_quadruple_64
#define GALAHAD_USEEQP_precision GALAHAD_USEEQP_quadruple_64
#define GALAHAD_USEEKS_precision GALAHAD_USEEKS_quadruple_64
#define GALAHAD_USEEPF_precision GALAHAD_USEEPF_quadruple_64
#define GALAHAD_USEEQP_precision GALAHAD_USEEQP_quadruple_64
#define GALAHAD_USEERMO_precision GALAHAD_USEERMO_quadruple_64
#define GALAHAD_USEFASTR_precision GALAHAD_USEFASTR_quadruple_64
#define GALAHAD_USEFDH_precision GALAHAD_USEFDH_quadruple_64
Expand Down Expand Up @@ -357,6 +359,7 @@
#define RUNTRACE_SIF_precision RUNTRACE_SIF_quadruple_64
#define RUNTRAL_SIF_precision RUNTRAL_SIF_quadruple_64
#define RUNCQPS_SIF_precision RUNCQPS_SIF_quadruple_64
#define RUNEKS_SIF_precision RUNEKS_SIF_quadruple_64
#define RUNEPF_SIF_precision RUNEPF_SIF_quadruple_64
#define RUNERMO_SIF_precision RUNERMO_SIF_quadruple_64
#define RUNFASTR_SIF_precision RUNFASTR_SIF_quadruple_64
Expand Down Expand Up @@ -427,8 +430,9 @@
#define GALAHAD_DLP_precision GALAHAD_DLP_quadruple
#define GALAHAD_DPS_precision GALAHAD_DPS_quadruple
#define GALAHAD_DQP_precision GALAHAD_DQP_quadruple
#define GALAHAD_EQP_precision GALAHAD_EQP_quadruple
#define GALAHAD_EKS_precision GALAHAD_EKS_quadruple
#define GALAHAD_EPF_precision GALAHAD_EPF_quadruple
#define GALAHAD_EQP_precision GALAHAD_EQP_quadruple
#define GALAHAD_ERMO_precision GALAHAD_ERMO_quadruple
#define GALAHAD_EXTEND_precision GALAHAD_EXTEND_quadruple
#define GALAHAD_FASTR_precision GALAHAD_FASTR_quadruple
Expand Down Expand Up @@ -551,8 +555,9 @@
#define GALAHAD_USEDLP_precision GALAHAD_USEDLP_quadruple
#define GALAHAD_USEDPS_precision GALAHAD_USEDPS_quadruple
#define GALAHAD_USEDQP_precision GALAHAD_USEDQP_quadruple
#define GALAHAD_USEEQP_precision GALAHAD_USEEQP_quadruple
#define GALAHAD_USEEKS_precision GALAHAD_USEEKS_quadruple
#define GALAHAD_USEEPF_precision GALAHAD_USEEPF_quadruple
#define GALAHAD_USEEQP_precision GALAHAD_USEEQP_quadruple
#define GALAHAD_USEERMO_precision GALAHAD_USEERMO_quadruple
#define GALAHAD_USEFASTR_precision GALAHAD_USEFASTR_quadruple
#define GALAHAD_USEFDH_precision GALAHAD_USEFDH_quadruple
Expand Down Expand Up @@ -752,6 +757,7 @@
#define RUNTRACE_SIF_precision RUNTRACE_SIF_quadruple
#define RUNTRAL_SIF_precision RUNTRAL_SIF_quadruple
#define RUNCQPS_SIF_precision RUNCQPS_SIF_quadruple
#define RUNEKS_SIF_precision RUNEKS_SIF_quadruple
#define RUNEPF_SIF_precision RUNEPF_SIF_quadruple
#define RUNERMO_SIF_precision RUNERMO_SIF_quadruple
#define RUNFASTR_SIF_precision RUNFASTR_SIF_quadruple
Expand Down
18 changes: 12 additions & 6 deletions include/galahad_modules_single.h
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,9 @@
#define GALAHAD_DLP_precision GALAHAD_DLP_single_64
#define GALAHAD_DPS_precision GALAHAD_DPS_single_64
#define GALAHAD_DQP_precision GALAHAD_DQP_single_64
#define GALAHAD_EQP_precision GALAHAD_EQP_single_64
#define GALAHAD_EKS_precision GALAHAD_EKS_single_64
#define GALAHAD_EPF_precision GALAHAD_EPF_single_64
#define GALAHAD_EQP_precision GALAHAD_EQP_single_64
#define GALAHAD_ERMO_precision GALAHAD_ERMO_single_64
#define GALAHAD_EXTEND_precision GALAHAD_EXTEND_single_64
#define GALAHAD_FASTR_precision GALAHAD_FASTR_single_64
Expand Down Expand Up @@ -156,9 +157,10 @@
#define GALAHAD_USEDLP_precision GALAHAD_USEDLP_single_64
#define GALAHAD_USEDPS_precision GALAHAD_USEDPS_single_64
#define GALAHAD_USEDQP_precision GALAHAD_USEDQP_single_64
#define GALAHAD_USEEKS_precision GALAHAD_USEEKS_single_64
#define GALAHAD_USEEPF_precision GALAHAD_USEEPF_single_64
#define GALAHAD_USEEQP_precision GALAHAD_USEEQP_single_64
#define GALAHAD_USEERMO_precision GALAHAD_USEERMO_single_64
#define GALAHAD_USEEPF_precision GALAHAD_USEEPF_single_64
#define GALAHAD_USEFASTR_precision GALAHAD_USEFASTR_single_64
#define GALAHAD_USEFDH_precision GALAHAD_USEFDH_single_64
#define GALAHAD_USEFILTRANE_precision GALAHAD_USEFILTRANE_single_64
Expand Down Expand Up @@ -356,8 +358,9 @@
#define RUNPDQP_SIF_precision RUNPDQP_SIF_single_64
#define RUNTRACE_SIF_precision RUNTRACE_SIF_single_64
#define RUNTRAL_SIF_precision RUNTRAL_SIF_single_64
#define RUNCQPS_SIF_precision RUNCQPS_SIF_single_64
#define RUNEKS_SIF_precision RUNEKS_SIF_single_64
#define RUNEPF_SIF_precision RUNEPF_SIF_single_64
#define RUNCQPS_SIF_precision RUNCQPS_SIF_single_64
#define RUNERMO_SIF_precision RUNERMO_SIF_single_64
#define RUNFASTR_SIF_precision RUNFASTR_SIF_single_64
#define RUNFUNNELEQ_SIF_precision RUNFUNNELEQ_SIF_single_64
Expand Down Expand Up @@ -427,8 +430,9 @@
#define GALAHAD_DLP_precision GALAHAD_DLP_single
#define GALAHAD_DPS_precision GALAHAD_DPS_single
#define GALAHAD_DQP_precision GALAHAD_DQP_single
#define GALAHAD_EQP_precision GALAHAD_EQP_single
#define GALAHAD_EKS_precision GALAHAD_EKS_single
#define GALAHAD_EPF_precision GALAHAD_EPF_single
#define GALAHAD_EQP_precision GALAHAD_EQP_single
#define GALAHAD_ERMO_precision GALAHAD_ERMO_single
#define GALAHAD_EXTEND_precision GALAHAD_EXTEND_single
#define GALAHAD_FASTR_precision GALAHAD_FASTR_single
Expand Down Expand Up @@ -551,8 +555,9 @@
#define GALAHAD_USEDLP_precision GALAHAD_USEDLP_single
#define GALAHAD_USEDPS_precision GALAHAD_USEDPS_single
#define GALAHAD_USEDQP_precision GALAHAD_USEDQP_single
#define GALAHAD_USEEQP_precision GALAHAD_USEEQP_single
#define GALAHAD_USEEKS_precision GALAHAD_USEEKS_single
#define GALAHAD_USEEPF_precision GALAHAD_USEEPF_single
#define GALAHAD_USEEQP_precision GALAHAD_USEEQP_single
#define GALAHAD_USEERMO_precision GALAHAD_USEERMO_single
#define GALAHAD_USEFASTR_precision GALAHAD_USEFASTR_single
#define GALAHAD_USEFDH_precision GALAHAD_USEFDH_single
Expand Down Expand Up @@ -751,8 +756,9 @@
#define RUNPDQP_SIF_precision RUNPDQP_SIF_single
#define RUNTRACE_SIF_precision RUNTRACE_SIF_single
#define RUNTRAL_SIF_precision RUNTRAL_SIF_single
#define RUNCQPS_SIF_precision RUNCQPS_SIF_single
#define RUNEKS_SIF_precision RUNEKS_SIF_single
#define RUNEPF_SIF_precision RUNEPF_SIF_single
#define RUNCQPS_SIF_precision RUNCQPS_SIF_single
#define RUNERMO_SIF_precision RUNERMO_SIF_single
#define RUNFASTR_SIF_precision RUNFASTR_SIF_single
#define RUNFUNNELEQ_SIF_precision RUNFUNNELEQ_SIF_single
Expand Down
Loading

0 comments on commit 5230165

Please sign in to comment.