Difference between revisions of "Programming"
From HPC
m |
m (→Programming Languages & Libraries) |
||
| (11 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
| − | |||
| − | + | ==Programming Support== | |
* Development software listed here refer to those list in the '''development''' section of typing ''[[General/Modules|module avail]]''. | * Development software listed here refer to those list in the '''development''' section of typing ''[[General/Modules|module avail]]''. | ||
* [[Programming/Style|Viper programming guidelines and style]] | * [[Programming/Style|Viper programming guidelines and style]] | ||
| + | * [[Programming/GitHub|Use of Github for software control]] | ||
* [http://hpc.wordpress.hull.ac.uk/support/research-software-engineering/ Research software engineering] | * [http://hpc.wordpress.hull.ac.uk/support/research-software-engineering/ Research software engineering] | ||
| + | |||
| + | * [[General/Jupyternotebook|Using Jupyter notebooks on our HPC]] | ||
===Specialised Programming Areas=== | ===Specialised Programming Areas=== | ||
| − | {| class="wikitable" | + | {| class="wikitable mw-collapsible" |
| − | | style="width:25%" | <Strong>Area</Strong> | + | | style="width:25%; background: #cccccc;" | <Strong>Area</Strong> |
| − | | style="width:75%" | <Strong>Description</Strong> | + | | style="width:75%; background: #cccccc;" | <Strong>Description</Strong> |
|- | |- | ||
| [[programming/Deep Learning|Deep Learning]] | | [[programming/Deep Learning|Deep Learning]] | ||
| Line 23: | Line 25: | ||
| − | {| class="wikitable" | + | {| class="wikitable mw-collapsible " |
| − | | style="width:25%" | <Strong>Package</Strong> | + | | style="width:25%; background: #cccccc;" | <Strong>Package</Strong> |
| − | | style="width:75%" | <Strong>Description</Strong> | + | | style="width:75%; background: #cccccc;" | <Strong>Description</Strong> |
|- | |- | ||
| [[programming/C|C]] | | [[programming/C|C]] | ||
| Line 34: | Line 36: | ||
|- | |- | ||
| [[programming/C-Sharp|C-Sharp]] | | [[programming/C-Sharp|C-Sharp]] | ||
| − | | C# is a multi-paradigm programming language encompassing strong typing, imperative, declarative, functional, generic, object-oriented (class-based), and component-oriented programming. | + | | C# is a multi-paradigm programming language encompassing strong typing, imperative, declarative, functional, generic, object-oriented (class-based), and component-oriented programming. Created by Microsoft. |
|- | |- | ||
| [[programming/Cuda|CUDA]] | | [[programming/Cuda|CUDA]] | ||
| Line 44: | Line 46: | ||
| [[programming/Java|JAVA]] | | [[programming/Java|JAVA]] | ||
| Java is a high-level programming language originally developed by Sun Microsystems and released in 1995. | | Java is a high-level programming language originally developed by Sun Microsystems and released in 1995. | ||
| − | |||
| − | |||
| − | |||
|- | |- | ||
| [[programming/OpenACC|OpenACC]] | | [[programming/OpenACC|OpenACC]] | ||
| Line 52: | Line 51: | ||
|- | |- | ||
| [[programming/OpenCL|OpenCL]] | | [[programming/OpenCL|OpenCL]] | ||
| − | | A framework for writing programs that execute across heterogeneous platforms consisting of central processing units (CPUs), graphics processing units (GPUs), digital signal processors (DSPs), field-programmable gate arrays (FPGAs) and other processors or hardware accelerators. | + | | A framework for writing programs that execute across heterogeneous platforms consisting of central processing units (CPUs), graphics processing units (GPUs), digital signal processors (DSPs), and field-programmable gate arrays (FPGAs) and other processors or hardware accelerators. |
|- | |- | ||
| [[programming/OpenMP|OpenMP]] | | [[programming/OpenMP|OpenMP]] | ||
| Line 77: | Line 76: | ||
* [[Applications|Application support]] | * [[Applications|Application support]] | ||
* [[Libraries|Library support]] | * [[Libraries|Library support]] | ||
| − | * [[Programming|Development support]] | + | * [[Programming|Development support]] * |
* [[General|General]] | * [[General|General]] | ||
| − | |||
Latest revision as of 10:47, 23 March 2023
Programming Support
- Development software listed here refer to those list in the development section of typing module avail.
- Viper programming guidelines and style
- Use of Github for software control
- Research software engineering
Specialised Programming Areas
| Area | Description |
| Deep Learning | Deep learning is part of a broader family of machine learning methods based on learning data representations, as opposed to task-specific algorithms. |
Programming Languages & Libraries
| Package | Description |
| C | C is a general-purpose, high-level language that was originally developed by Dennis M. Ritchie to develop the UNIX operating system at Bell Labs. |
| C++ | C++ is a general-purpose programming language. It has imperative, object-oriented and generic programming features, while also providing facilities for low-level memory manipulation. |
| C-Sharp | C# is a multi-paradigm programming language encompassing strong typing, imperative, declarative, functional, generic, object-oriented (class-based), and component-oriented programming. Created by Microsoft. |
| CUDA | CUDA is a parallel computing platform and application programming interface (API) model created by Nvidia. |
| Fortran | Fortran is a general-purpose, imperative programming language that is especially suited to numeric computation and scientific computing. FORTRAN was the world's first high-level programming language and was started in 1957. |
| JAVA | Java is a high-level programming language originally developed by Sun Microsystems and released in 1995. |
| OpenACC | OpenACC is an implementation of multithreading, a method of parallelizing whereby a master thread (a series of instructions executed consecutively) forks a specified number of slave threads and the system divides a task among them. This is similar to OpenMP but has had CPU/GPU support from the beginning. There is language support from C/C++ and Fortran. |
| OpenCL | A framework for writing programs that execute across heterogeneous platforms consisting of central processing units (CPUs), graphics processing units (GPUs), digital signal processors (DSPs), and field-programmable gate arrays (FPGAs) and other processors or hardware accelerators. |
| OpenMP | OpenMP is an implementation of multithreading, a method of parallelizing whereby a master thread (a series of instructions executed consecutively) forks a specified number of slave threads and the system divides a task among them. There is language support from C/C++ and Fortran. |
| OpenMPI | MPI stands for the Message Passing Interface. MPI is a standardized API typically used for parallel and/or distributed computing. There is language support from C/C++ and Fortran. |
| Perl | Perl is an interpreted language useful for rapid code development and multi-purpose programming. |
| Python | Python is an interpreted language useful for rapid code development and distributed computing. |
| R | R is a programming language and software environment for statistical analysis, graphics representation and reporting. |
- Home
- Application support
- Library support
- Development support *
- General