GPU acceleration of polynomial homotopy continuation in PHCv2.4.87

While the code belongs to code base of PHCpack, it is under development,
with its own specific makefiles and running modes.

In chronological order, the folders are grouped as follows:
(1) The code developed in collaboration with Genady Yoffe
    and Xiangcheng Yu, for the NVIDIA Tesla C2050 and K20C,
    using gqd, the GPU version of QDlib to accelerate path tracking
    with double double and quad double arithmetic.
(2) More recent code applies the code generated by the CAMPARY software,
    developed on NVIDIA C2050, K20C, P100, V100, and GeForce 2080.
    Seven different precisions are supported: double, double double,
    triple double, quad double, penta double, octo double, and deca double.

The directories are listed below in chronological order:

PED : Polynomial Evaluation and Differentiation,
      the paper was presented at PDSEC 2012 in Shanghai.

MGS : version of modified Gram-Schmidt method,
      the paper was presented at PDSEC 2013 in Boston.

MGS2 : version 2 of MGS for larger dimensions, combined with Newton's method,
       presented at HPCC 2014 in Paris.

Path : accelerated path tracking, as standalone package, and with
       integration into PHCpack, for presentation at ISSAC 2015,
       PASCO 2015, and HPCC 2015 (in this chronological order).

Norms : multiple double arithmetic tested on vector 2-norms.

Convolutions : evaluation and differentiation of monomials at series.

Polynomials : evaluation and differentiation of polynomials at series,
              described in a paper presented at PDSEC 2021 (online).

Matrices : data staging algorithms for matrix factorizations at series,
           presented at SIAM PP 22, described in a PDSEC 2022 paper.  

Newton : running Newton's algorithm to compute power series expansions.

Track : tracking paths using Newton's method for Taylor series.

This code is distributed under the GNU GENERAL PUBLIC LICENSE,
see the file COPYING.txt for version 3 of this license.
