17 research outputs found

    Compiler and Runtime Techniques for Automatic Parallelization of Sequential Applications.

    Full text link
    Multicore designs have emerged as the mainstream design paradigm for the microprocessor industry. Unfortunately, providing multiple cores does not directly translate into performance for most applications. An attractive approach for exploiting multiple cores is to rely on tools, both compilers and runtime optimizers, to automatically extract threads from sequential applications. This dissertation tackles many challenges faced in automatic parallelization of sequential applications, including general-purpose applications written in C/C++ and client-side web applications written in JavaScript, with the goal of achieving speedup on commodity multicore systems. First, a complete parallelizing compiler system for C/C++ is introduced. This system successfully identifies parallelization opportunities in programs and transforms the code to a parallel version. A matching runtime system, STMlite, is proposed to monitor the parallelized program behavior and fix any misspeculations that might happen. We show that this system can generate and execute parallel programs that are upto 2.2x faster than their sequential counterparts, when executed on an 8-core commodity system. The second piece of work focuses on a similar problem in a very different application domain, JavaScript programs running on the client’s web browser. This dissertation is the first research work that proposes dynamic and automatic parallelization of JavaScript applications. The nature of the JavaScript language and its target execution environments impose a completely different set of challenges that we intend to solve. We first propose the ParaScript parallelizing engine, which identifies and speculatively parallelizes potentially parallel code segments while the code is running in the browser. A low-cost and highly customized speculation approach verifies the execution of the parallelized client-side code and rolls back in case of any misspeculation. Dynamic parallelization using ParaScript yields an average of 2.18x speedup over sequential JavaScript code on an 8-core commodity system. In addition, we introduce ParaGuard, a technique which executes the runtime checks required by trace-based JavaScript compilers in parallel with the main execution. ParaGuard is able to improve performance by 15% by using an additional core in multi-core systems.Ph.D.Computer Science & EngineeringUniversity of Michigan, Horace H. Rackham School of Graduate Studieshttp://deepblue.lib.umich.edu/bitstream/2027.42/86499/1/mehrara_1.pd

    Dynamically accelerating client-side web applications through decoupled execution

    No full text
    The emergence and wide adoption of web applications have moved the client-side component, often written in JavaScript, to the forefront of computing on the web. Web application developers try to move more computation to the client side to avoid unnecessary network traffic and make the applications moreresponsive.Therefore,JavaScriptapplicationsarebecoming larger and more computation intensive. Trace-based just-in-time compilation have been proposed to address the performance bottleneckintheseapplications.Inthispaper,weexploittheextra processing power in multicore systems to further improve the performance of trace-based execution of JavaScript programs. In trace-based engines, a considerable portion of execution time is spent on running guards which are operations inserted in the native code to check if the properties assumed by the compiled code actually hold during execution. We introduce ParaGuard to off-load these guards to another thread, while speculatively executing the main trace. In a manner similar to what happens in current trace-based JITs, if a check fails, ParaGuard aborts the native trace execution and reverts back to interpreting the JavaScript bytecode. We also propose several optimizations including guard branch aggregation and profile-based snapshot elimination to further improve the performance of our technique. We show that ParaGuard can achieve an average of 15% performance improvement over current trace-based compilers using an extra processor on commodity multicore processors. I

    تاثیر فرهنگ سازمانی بر جو سازمانی با توجه به تحول سازمانی در نظام آموزش و پرورش تهران

    No full text
    The present study was aimed to examine the effect of organizational culture on organizational atmosphere, considering organizational evolution. Research method was descriptive-survey in terms of data collection; and in terms of objective, it was practical. The statistical population of the present study consisted of all employees in the education system of Tehran (2000 individuals). Sample size included 322 individuals who were selected using a Morgan Table and a stratified random sampling method. Data collection tools included Robins' standard organizational culture questionnaire, Holpin and Croft's organizational atmosphere questionnaire, and John Gutter and Peter Draker's integrated organizational evolution questionnaire, which were designed using a 5-point Liker scale. Face validity and content validity of the questionnaire were approved; and by calculating Cronbach's alpha coefficient, its reliability was calculated to be 0.89 for organizational culture, 0.70 for organizational atmosphere, and 0.87 for organizational development. In order to analyze data, a regression test was used. The obtained results showed that organizational culture affects organizational atmosphere, considering the fact that organizational evolution has a positive significant effect. Based on Sobel's test, the direct effect of organizational culture on organizational atmosphere is 0.39 in a 5% level. And its confidence distance is considerably greater than zero, which indicates that the effect of the intermediary variable, i.e. organizational evolution, is effective and significant in a regression model

    Uncovering hidden loop level parallelism in sequential applications

    No full text
    As multicore systems become the dominant mainstream computing technology, one of the most difficult challenges the industry faces is the software. Applications with large amounts of explicit thread-level parallelism naturally scale performance with the number of cores, but single-threaded applications realize little to no gains with additional cores. One solution to this problem is automatic parallelization that frees the programmer from the difficult task of parallel programming and offers hope for handling the vast amount of legacy single-threaded software. There is a long history of automatic parallelization for scientific applications, but the techniques have generally failed in the context of generalpurpose software. Thread-level speculation overcomes the problem of memory dependence analysis by speculating unlikely dependences that serialize execution. However, this approach has lead to only modest performance gains. In this paper, we take another look at exploiting loop-level parallelism in single-threaded applications. We show that substantial amounts of loop-level parallelism is available in general-purpose applications, but it lurks beneath the surface and is often obfuscated by a small number of data and control dependences. We adapt and extend several code transformations from the instruction-level and scientific parallelization communities to uncover the hidden parallelism. Our results show that 61 % of the dynamic execution of studied benchmarks can be parallelized with our techniques compared to 27 % using traditional thread-level speculation techniques, resulting in a speedup of 1.84 on a four core system compared to 1.41 without transformations.

    Relation between Organizational Intelligence and Creativity of Managers in Public Junior High Schools of East of Gilan Province

    No full text
    ABSTRACT This is research with main purpose study the relation between organization intelligence and creativity and method of the research was descriptive of correlation type. Statistics was included with managers of public junior schools of east of Gilan province in duration of educational year, 280 person. And 162 of them were selected with random sample selecting method. The tools which are used in this research were 2 questionnaires of organization intelligence and creativity. questionnaire of organization intelligence were arranged in 49 fiveoptioned questions relevant with likret measure and questionnaire of creativity had been arranged with 50. The information gathered in this research were analyzed by using of descriptive statistic of plenty, percentage, drawing of diagrams and codification of tables and elicited statistics of multiple data of regression tests, adhesion coefficient of pierson examination and test of analyzing variance. The outcome of the research showed that is a positive and meaningful relation between creativity and organization intelligence, component of strategic perspective, common fate and use of knowledge is the best forecasting, strategic view, desire of change, unity and agreement, spirit and creativity of schools managers, use of knowledge and operation pressure of schools managers
    corecore