24012185
Dynamic Scheduling Mechanism for Result Certification in Peer to Peer Grid Computing
In a peer to peer grid computing environment, volunteers have heterogeneous properties and dynamically join and leave during execution. Therefore, it is essential to adapt to an unstable and widely distributed environment. However, existing scheduling and result certification mechanisms do not adapt to such a dynamic environment. As a result, they undergo high overhead, performance degradation, and scalability problems. 
 
To solve the problems, we propose a new scheduling mechanism for result certification. The proposed mechanism applies different scheduling and result certification algorithms to different volunteer groups that are classified on the basis of their properties such as volunteering service time, availability, and credibility. It also exploits mobile agents in a distributed way in order to adapt to a dynamic peer to peer grid computing environment.
468988
Volunteer availability based fault tolerant scheduling mechanism in desktop grid computing environment
Fault tolerance is essential to the further development of desktop grid computing system in order to guarantee continuous and reliable execution of tasks in spite of failures. In a desktop grid computing environment, volunteers are often susceptible to volunteer autonomy failures such as volatility failure and interference failure in the middle of execution of tasks because a desktop grid computing maximally respects autonomy of volunteers. The failures result in an independent livelock problem (i.e. the delay and blocking of the entire execution of a job). Therefore, the failures should be considered in a scheduling mechanism. In This work, in order to tolerate volunteer autonomy failures, we propose a new fault tolerant scheduling mechanism. First, we specify a volunteer autonomy failures and an independent livelock problem. Then, we propose a volunteer availability which reflects the degree of volunteer autonomy failures. Finally, we propose a fault tolerant scheduling mechanism based on volunteer availability (which is called VAFTSM).
16177959
Multi-Node Global Directory Construction in Peer-to-Peer Systems
In P2P systems, the speed of searching for desired lists of sharable files is one of the most important measurement issues in evaluation of overall system performance. Although the searching schemes of existing non-structured P2P systems have been improved to enhance speed considerably, they still never reach to the level of those of the centralized and structured systems. In this paper, we propose a multi-node global directory in P2P systems, where all the lists of sharable resources of the joining peers are aggregated and divided into the chosen nodes while keeping collating sequence as a whole to make one big linked list. Thus in indexed sequential searching, the system provides us with convenience of using the command like 'dir' of MS-DOS, and in general keyword searching, which is naturally impossible for the structured P2P systems, the searching speed is even faster than those of centralized P2P systems since a small list segment is scanned at each node synchronously in parallel
16841890
Scheduling Scheme based on Dedication Rate in Volunteer Computing Environment
A volunteer node can join and leave a volunteer computing system freely. However, existing volunteer computing systems suffer from interruptions of job execution, delays of execution time, and increases of total execution time, since they do not consider dynamic scheduling properties (i.e. volatilities), such as leave, join, and suspension. Therefore, dynamic execution properties of volunteer node should be considered in scheduling schemes, in order to design a stable and reliable volunteer computing system. This paper proposes a new scheduling scheme based on the dedication rate (DR), which reflects the dynamic properties of a volunteer. The scheduling scheme improves the completeness and reliability of execution, while also decreasing delay and total execution time. In addition, an implementation of the proposed scheduling scheme on top of Korea@Home is described, as well as performance evaluation
34200542
MJSA: Markov job scheduler based on availability in desktop grid computing environment
In a desktop grid computing environment, voluntary desktops (i.e., resource providers) are free to leave and join independently in the middle of execution. To develop a reliable desktop grid computing system, a scheduling scheme must consider the dynamic nature (i.e., volatility) of volunteers. Existing desktop grid computing systems, however, do not consider volatility in their scheduling procedures. As a result, job execution is often suspended, resulting in delayed completion time and degraded performance and reliability. To solve these limitations, we propose the Markov Job Scheduler based on Availability (MJSA) supporting three advanced scheduling schemes: OPTIMIST, PESSIMIST, and REALIST. These scheduling schemes are based on stochastic modeling of desktop availability. In the OPTIMIST scheme, in which time constraints are relaxed, the MJSA provides reliable resource selection at low cost. In the PESSIMIST scheme, where time constraints are rigid, the MJSA enables stable makespan in strictly time. Finally, in the REALIST scheme, where time constraints are only partially relaxed, the MJSA provides enhanced cost efficiency. In conclusion, the MJSA improves performance and reliability by adapting the appropriate scheduling scheme when selecting volunteers according to the needs of applications.
1688268
Mobile Agent Based Adaptive Scheduling Mechanism in Peer to Peer Grid Computing
In a peer to peer grid computing environment, volunteers are exposed to failures such as crash and link failures. In addition, since volunteers can dynamically join and leave executions and they are not dedicated only to a peer to peer grid computing, the executions of volunteers are stopped or suspended more frequently than in a grid computing environment. These failures result in the delay and blocking of the executions of tasks and even partial or entire loss of the executions. In addition, these failures make it difficult for a volunteer server to schedule tasks and manage the allocated tasks as well as volunteers. Existing peer to peer grid computing systems, however, do not deal with these failures in scheduling mechanisms. Moreover, since existing scheduling mechanisms are performed only by a volunteer server in a centralized way, there is a high overhead. 
 
To solve these problems, we propose a mobile agent based adaptive scheduling mechanism (MAASM). We implemented MAASM in Korea@Home and ODDUGI mobile agent system. The MAASM reduces the overhead of volunteer server by using mobile agents in scheduling procedure in a distributed way. In addition, it tolerates the various failures(especially, volunteer autonomy failures) which frequently occur in a peer to peer grid computing environment. Consequently, MAASM guarantees reliable and continuous executions in spite of the failures, so it decreases total execution time.
5975093
Multi-chain prefetching: effective exploitation of inter-chain memory parallelism for pointer-chasing codes
Presents multi-chain prefetching, a technique that utilizes offline analysis and a hardware prefetch engine to prefetch multiple independent pointer chains simultaneously, thus exploiting inter-chain memory parallelism for the purpose of memory latency tolerance. This paper makes three contributions. First, we introduce a scheduling algorithm that identifies independent pointer chains in pointer-chasing codes and computes a prefetch schedule that overlaps serialized cache misses across separate chains. Our analysis focuses an static traversals. We also propose using speculation to identify independent pointer chains in dynamic traversals. Second, we present the design of a prefetch engine that traverses pointer-based data structures and overlaps multiple pointer chains according to our scheduling algorithm. Finally, we conduct an experimental evaluation of multi-chain prefetching and compare its performance against two existing techniques: jump pointer prefetching and prefetch arrays. Our results show that multi-chain prefetching improves the execution time by 40% across six pointer-chasing kernels from the Olden benchmark suite and by 8% across four SPECInt CPU2000 benchmarks. Multi-chain prefetching also outperforms jump pointer prefetching and prefetch arrays by 28% on Olden, and by 12% on SPECInt. Furthermore, speculation can enable multi-chain prefetching for some dynamic traversal codes, but our technique loses its effectiveness when the pointer-chain traversal order is unpredictable. Finally, we also show that combining multi-chain prefetching with prefetch arrays can potentially provide higher performance than either technique alone.
3513935
A dynamic mechanism for time-constrained trading
The market mechanism design is important for both conventional and electronic commerce as it affects the fairness and efficiency of trading. In this paper, we propose a new market mechanism for time- constrained trading. Our mechanism mimics the traditional brokering system, where buyers and sellers meet together and negotiate through an electronic marketplace. At each time step, agents are paired up for negotiating a deal. We consider that buyer and seller agents are associated with a time constraint and a search cost, and thus must decide promptly and judiciously whether to accept an offer. One distinguishing feature of our mechanism is that the marketplace provides buyer and seller agents with statistical information about the goods. Specifically, the statistics include the probability distributions of obtaining and losing a particular offer. With this information, the agents' decision can be viewed as a Markov decision process, and the optimal (dominant) trading strategy can be computed. In other words, buyer and seller agents can make trading decisions that maximize their expected utility without the need of speculating others actions. We also explain how such a dominant strategy can be computed in an efficient manner. Another distinguishing feature of the proposed mechanism is that the statistics are updated continuously and hence the dominant trading strategy is adaptive. Experimental results verify that our mechanism facilitates a fair allocation to the trading agents under various demand and supply conditions.
2658837
A general framework for prefetch scheduling in linked data structures and its application to multi-chain prefetching
Pointer-chasing applications tend to traverse composite data structures consisting of multiple independent pointer chains. While the traversal of any single pointer chain leads to the serialization of memory operations, the traversal of independent pointer chains provides a source of memory parallelism. This article investigates exploiting such interchain memory parallelism for the purpose of memory latency tolerance, using a technique called multi--chain prefetching. Previous works [Roth et al. 1998;Roth and Sohi 1999] have proposed prefetching simple pointer-based structures in a multi--chain fashion. However, our work enables multi--chain prefetching for arbitrary data structures composed of lists, trees, and arrays.This article makes five contributions in the context of multi--chain prefetching. First, we introduce a framework for compactly describing linked data structure (LDS) traversals, providing the data layout and traversal code work information necessary for prefetching. Second, we present an off-line scheduling algorithm for computing a prefetch schedule from the LDS descriptors that overlaps serialized cache misses across separate pointer-chain traversals. Our analysis focuses on static traversals. We also propose using speculation to identify independent pointer chains in dynamic traversals. Third, we propose a hardware prefetch engine that traverses pointer-based data structures and overlaps multiple pointer chains according to the computed prefetch schedule. Fourth, we present a compiler that extracts LDS descriptors via static analysis of the application source code, thus automating multi--chain prefetching. Finally, we conduct an experimental evaluation of compiler-instrumented multi--chain prefetching and compare it against jump pointer prefetching [Luk and Mowry 1996], prefetch arrays [Karlsson et al. 2000], and predictor-directed stream buffers (PSB) [Sherwood et al. 2000].Our results show compiler-instrumented multi--chain prefetching improves execution time by 40% across six pointer-chasing kernels from the Olden benchmark suite [Rogers et al. 1995], and by 3% across four SPECint2000 benchmarks. Compared to jump pointer prefetching and prefetch arrays, multi--chain prefetching achieves 34% and 11% higher performance for the selected Olden and SPECint2000 benchmarks, respectively. Compared to PSB, multi--chain prefetching achieves 27% higher performance for the selected Olden benchmarks, but PSB outperforms multi--chain prefetching by 0.2% for the selected SPECint2000 benchmarks. An ideal PSB with an infinite Markov predictor achieves comparable performance to multi--chain prefetching, coming within 6% across all benchmarks. Finally, speculation can enable multi--chain prefetching for some dynamic traversal codes, but our technique loses its effectiveness when the pointer-chain traversal order is highly dynamic.
19996434
A multi-material virtual prototyping system
Abstract This paper proposes a multi-material virtual prototyping system for digital fabrication of heterogeneous prototypes. It consists mainly of a topological hierarchy-sorting algorithm for processing slice contours, and a virtual simulation system for visualisation and optimisation of multi-material layered manufacturing (MMLM) processes. The topological hierarchy-sorting algorithm processes the hierarchy relationship of complex slice contours. It builds a parent-and-child list that defines the containment relationship of the slice contours, and subsequently arranges the contours in an appropriate sequence, which facilitates toolpath planning for MMLM by avoiding redundant tool movements. The virtual simulation system simulates MMLM processes and provides stereoscopic visualisation of the resulting multi-material prototypes for quality analysis and optimisation of the processes.
1958153
Maintaining Consistency Under Isolation Relaxation of Web Services Transactions
For efficiently managing Web Services (WS) transactions which are executed across multiple loosely-coupled autonomous organizations, isolation is commonly relaxed. A Web services operation of a transaction releases locks on its resources once its jobs are completed without waiting for the completions of other operations. However, those early unlocked resources can be seen by other transactions, which can spoil data integrity and causes incorrect outcomes. Existing WS transaction standards do not consider this problem. In this paper, we propose a mechanism to ensure the consistent executions of isolation-relaxing WS transactions. The mechanism effectively detects inconsistent states of transactions with a notion of a completion dependency and recovers them to consistent states. We also propose a new Web services Transaction Dependency management Protocol (WTDP). WTDP helps organizations manage the WS transactions easily without data inconsistency. WTDP is designed to be compliant with a representative WS transaction standard, the Web Services Transactions specifications, for easy integration into existing WS transaction systems. We prototyped a WTDP-based WS transaction management system to validate our protocol.