ScholarQuill logoScholarQuillUniversity Notes
  • Notes
  • Past Papers
  • Blogs
  • Todo
Login
ScholarQuill logoScholarQuillUniversity Notes
Login
NotesPast PapersBlogsTodo
More
SubjectsDiscussionCGPA CalculatorGPA CalculatorStudent PortalCourse Outline
About
About usPrivacy PolicyReportContact
Notes
Past Papers
Blogs
Todo
Analytics
    Current Subject
    🧩
    Parallel & Distributed Computing
    DC-323
    Progress0 / 35 topics
    Topics
    1. Asynchronous/synchronous computation/communication2. Concurrency control3. Fault tolerance4. GPU architecture and programming5. Heterogeneity6. Interconnection topologies7. Load balancing8. Memory consistency model9. Memory hierarchies10. Message passing interface (MPI)11. MIMD/SIMD12. Multithreaded programming13. Parallel algorithms & architectures14. Parallel I/O15. Performance analysis and tuning16. Power considerations17. Programming models18. Data parallel programming19. Task parallel programming20. Process-centric programming21. Shared memory programming22. Distributed memory programming23. Scalability and performance studies24. Scheduling25. Storage systems26. Synchronization27. Parallel computing tools28. CUDA, Swift29. Globus, Condor30. Amazon AWS, OpenStack31. Cilk32. GDB for parallel debugging33. Threads programming34. MPICH, OpenMP35. Hadoop, FUSE
    DC-323›Globus, Condor
    Parallel & Distributed ComputingTopic 29 of 35

    Globus, Condor

    7 minread
    1,197words
    Intermediatelevel

    Globus

    Globus is a suite of tools and services designed for grid computing and high-performance distributed computing environments. It enables the management and coordination of distributed resources, data, and applications across multiple domains. Globus is widely used in research and academic environments to support large-scale computational and data-intensive applications, allowing seamless resource sharing across different institutions.

    Key Features of Globus

    1. Grid Computing:

      • Globus is a leading platform for grid computing, which is a distributed computing model that allows the pooling of resources (such as computational power, storage, and networks) across multiple locations. This pooling of resources provides large-scale computational capabilities for applications that require significant processing power.
    2. Globus Toolkit:

      • The Globus Toolkit is a set of software tools for building grid applications. It provides libraries and services for resource management, data sharing, security, and communication. The toolkit facilitates the interaction between distributed systems, enabling applications to harness the power of multiple computing resources.
    3. Data Management:

      • Globus provides data management tools to facilitate the transfer and synchronization of large datasets across distributed systems. This includes efficient and secure file transfers, data access, and storage management. Globus Transfer is one such service used for high-performance data transfer.
    4. Authentication and Security:

      • Globus integrates with existing authentication services like X.509 certificates and OAuth to ensure secure access to distributed resources. It also includes access control mechanisms that allow users to define who can access their data or resources.
    5. Globus Connect:

      • Globus Connect is a tool that allows users to easily share and transfer data between their local systems and Globus-enabled resources. It facilitates the use of data services like Globus Auth for secure authentication and authorization.
    6. Globus Online:

      • Globus Online is a cloud-based service for managing and transferring large-scale data. It provides a user-friendly interface to move and share files across different institutions, scientific collaborations, and computational resources.
    7. Resource Scheduling:

      • Globus provides resource scheduling tools to help manage the execution of computational tasks on various distributed systems. These tools support the integration of different job schedulers, making it easier to run parallel or distributed applications on remote clusters.
    8. Collaboration:

      • Globus supports collaboration by enabling the sharing of computational resources, storage, and data across institutions. It helps in collaborative research, especially in large-scale projects that require distributed data storage and processing.

    Example Use Case

    Globus is commonly used in academic and research environments, where large datasets need to be processed and shared across different locations. For example, a team working on genomics research may use Globus to transfer genomic data between research institutions, enabling parallel processing and analysis on distributed computational resources.

    Condor

    Condor (also known as HTCondor) is a specialized workload management system designed for high-throughput computing (HTC). It manages the execution of compute-intensive jobs on distributed and heterogeneous environments. Condor is particularly well-suited for large-scale batch processing, where jobs can be divided into smaller, independent tasks that are executed on different machines, clusters, or grid resources.

    Key Features of Condor

    1. Job Scheduling:

      • Condor provides efficient job scheduling for executing a large number of computational tasks across distributed resources. It is capable of managing different job types such as batch jobs, interactive jobs, and parallel jobs. Condor schedules and dispatches jobs to available resources based on system load, job priority, and other constraints.
    2. Distributed Execution:

      • Condor can distribute jobs across a variety of resources, including desktop computers, compute clusters, and even cloud-based infrastructure. It supports a wide range of platforms, including Unix, Linux, and Windows.
    3. Resource Management:

      • Condor includes a Resource Manager that can allocate, manage, and track resources (e.g., CPUs, memory) for job execution. It supports resource allocation policies and ensures jobs are executed efficiently across different machines.
    4. Fault Tolerance and Job Restart:

      • Condor has built-in support for fault tolerance. If a job fails on one machine, Condor can automatically restart the job on another available machine. This ensures the continuation of work even in the presence of node failures or resource unavailability.
    5. Job Prioritization:

      • Condor provides job prioritization and policies that help manage the order in which jobs are executed. Priorities can be defined based on factors such as job size, job type, and the user's role within the system.
    6. Checkpointing:

      • Condor supports checkpointing, a mechanism that periodically saves the state of a running job. If a job is interrupted, Condor can resume it from the last checkpoint, avoiding the need to start from scratch.
    7. HTC (High-Throughput Computing):

      • Condor is specifically designed for high-throughput computing. It allows users to run a large number of independent jobs across different resources, making it ideal for scientific simulations, large-scale data processing, and rendering tasks.
    8. Parallel Computing Support:

      • Condor supports parallel computing by allowing multiple tasks of a single job to be executed on different resources simultaneously. This is particularly useful for applications that can be parallelized, such as Monte Carlo simulations or rendering.
    9. Scalability:

      • Condor is highly scalable, supporting systems from a small number of nodes to large-scale, multi-thousand-node clusters. Its ability to scale makes it suitable for projects with varying resource demands.
    10. Cross-Platform Compatibility:

      • Condor supports a wide variety of platforms and architectures, including Windows, Linux, and macOS, and can be used in both grid and cloud computing environments.

    Example Use Case

    Condor is used by researchers in fields such as physics, biology, and astronomy, where large-scale simulations are often required. For example, a team conducting climate modeling simulations may use Condor to distribute thousands of independent tasks (such as different weather models) across a computational grid, ensuring efficient use of available resources and reducing the overall time to completion.

    Comparison of Globus and Condor

    Feature Globus Condor
    Primary Focus Grid computing and data management High-throughput computing and job scheduling
    Target Users Researchers, scientists, institutions sharing data Research labs, universities, institutions requiring batch job management
    Resource Management Manages data transfer and resource access Manages the scheduling and execution of jobs
    Deployment Cloud-based, grid-based systems On-premise clusters, desktop grids
    Fault Tolerance Limited (mostly data transfer) Supports automatic job restart and checkpointing
    Scalability Highly scalable, suitable for data-intensive applications Highly scalable for job execution on large clusters
    Security Strong focus on secure data transfer and access Secure job execution with job-level policies
    Job Types Data transfer, resource scheduling Batch, parallel, and interactive jobs
    Job Execution Distributed data management and resource sharing Distributed job scheduling and execution
    Platform Compatibility Compatible with different grid and cloud environments Works on UNIX/Linux and Windows platforms

    Conclusion

    • Globus is ideal for applications that require large-scale data transfers, resource sharing, and collaboration across different institutions. It’s commonly used in grid computing environments where the primary need is to share resources and data seamlessly across multiple domains or locations.

    • Condor is better suited for high-throughput computing tasks that involve running large numbers of independent jobs. It excels in managing batch job execution and is widely used in scientific simulations, research, and areas requiring extensive job scheduling and fault tolerance.

    Both tools play a significant role in distributed computing, but they serve different purposes: Globus focuses on data and resource management across a grid, while Condor is designed for job scheduling and execution across distributed computing resources.

    Previous topic 28
    CUDA, Swift
    Next topic 30
    Amazon AWS, OpenStack

    Past Papers

    Open this section to load past papers

    Click on Show Past Papers to see past papers.
    On This Page
      Reading Stats
      Est. reading time7 min
      Word count1,197
      Code examples0
      DifficultyIntermediate