A collection of independent computers that seems to its users as a single coherent system.
High Performance Cluster Computing
A Cluster, first of all, as a subset of Distributed Systems must provide what such systems aim, like Scalability, Transparency and so on. By the way, based on our own definition of Clusters, the constituting components can be heterogeneous, dynamic (but not in a grid sense) and etc. Also, a High Performance Cluster must be as fast in responding its users\\\' requests as possible.
To develop our own cluster, we tried to investigate other cluster managers weak and strong points so that we can have their strengths deployed and the weaknesses off. We have installed and put into action many today’s popular cluster managers. Team members are all involved in the deployment process but, one is responsible to track changes.
The most Fundamental unit of a Cluster System is Resource Management. This unit itself contains many components such as Load Balancing, Resource Discovery, Process Migration and etc.Besides Resource management, Detection of Remote Systems and management and controlling of Remote Processes make the cluster Scalable, in size, geography and in administration domains.We need a mechanism through which processes can communicate in such a scalable area. We reach this by IPC same as RPC. Anyway, these components need to be defined, designed, implemented and integrated, in order to have the users\\\' needs and the systems’ requirements met.
Creating system software.
Interconnection Networks are responsible for connecting the processors or processing elements in multiprocessor or multicomputer Environments.
System Software Development
Software that acts as a part of an OS or a middleware.
Operating Systems Kernel
Researching around the heart of OS.
- Perusing process related linux kernel data structures as a prerequisite for future researches
- Detecting remote Operating Systems
- Analyzing data structures which are involved in remote information gathering
- Linux kernel patching
- Data gathering from kernel data sturctures for computing load indices
- Behavioral IPC
Configuration Management Tools
Tools allowing an administrator configure cluster nodes from a central node.
Unattended Installation Systems
Automatic and unattended installation of cluster node.
Security is a guarantee that an obligation will be met! Nowadays, each single system should have a certain amount of security features; a group of these creating a distributed system must have more of these features than single ones.
Join and disjoin of computers make one of the most important challenges in distributed systems. In this concept we have many protocols which are not sufficient for 21th century distributed systems. In this project we discuss these protocols.
Statistics and Mathematics
Used to define the relationship between parameters of a system.
Using and Coding MPI to bench our cluster.
Response Time Reduction in HPC Clusters
With reducing freeze time of migrating in process migration mechanisms, related processes can access it more than previous, their response time and total performance will improve.
Java Programming for Simulation
Java is used to simulate a Cluster\'s components.
- Local Robustness: A Criteria to Improve Process Migration in HPC Clusters
- An Analysis of MOSIX Load Balancing Capabilities
- Improving Learning-Based Request Forwarding in Resource Discovery through Load-Awareness
- RNS: Remote Node Selection for HPC Clusters
- An Efficient Live Process Migration Approach for High Performance Cluster Computing Systems