• Title/Summary/Keyword: Compilers

Search Result 71, Processing Time 0.023 seconds

A Design of An Optimizer For Conversion of Parallel Constructs of Data Parallel Language Programs (자료 병렬 언어 프로그램의 병렬 구조 변환을 위한 최적화기 설계)

  • Gu, Mi-Sun;Park, Myeong-Sun
    • The Transactions of the Korea Information Processing Society
    • /
    • v.6 no.3
    • /
    • pp.792-803
    • /
    • 1999
  • Most data parallel language compilers are source-to-source translators. Most Compilers of HPF which is recognized as a standard data parallel language convert a parallel program in PHF in a Fortran 77 program inserted message passing primitives. By the way, they currently generate significant amount of ineffective codes in the course of the conversion. Especially, FORALL construct is converted into several DO loops, so loop overhead of these codes is very increased. In this paper, we define and use relation distance vector to keep necessary informations. Then we evaluate and analyze execution time for the codes converted by our method and by PARADIGM method for various array sizes.

  • PDF

The Backgrounds and Roles of the Science Educators during the Enlightenment Period of Korea (개화기 과학 교육자의 배경과 역할)

  • Park, Jon-Seok;Chung, Byung-Hoon
    • Journal of The Korean Association For Science Education
    • /
    • v.20 no.3
    • /
    • pp.443-454
    • /
    • 2000
  • The compilers of science textbooks during the enlightenment period of Korea had been active in teaching and writing of science education. Thus a research on their social and educational backgrounds would help us to understand the historical process of the formation of Korean science education. In finding out their backgrounds, the official government resumes and the bulletins of an academic society were used. It was found that seven compilers of science textbooks, with their known resumes and bulletins, studied in Japan and another six studied in Korea. However, most students who studied in Japan with the support from Korean government returned to Korea and took an active part in education. In the first place, they had written the scientific articles in the bulletins. Then, they published school textbooks, including science textbooks. However, their roles in the science education replaced with the Japanese teachers with the lapse of time. Furthermore, since they were rather specialists in translation than in subject matters and studies applied sciences in technical colleges, they did little to foster science and could not form a firm basis for an independent internal structure of science education in Korea.

  • PDF

Optimizing Constant Value Generation in Just-in-time Compiler for 64-bit JavaScript Engine (64-bit 자바스크립트 적시 컴파일러를 위한 상수 값 생성 최적화)

  • Choi, Hyung-Kyu;Lee, Jehyung
    • Journal of KIISE
    • /
    • v.43 no.1
    • /
    • pp.34-39
    • /
    • 2016
  • JavaScript is widely used in web pages with HTML. Many JavaScript engines adopt Just-in-time compilers to accelerate the execution of JavaScript programs. Recently, many newly introduced devices are adopting 64-bit CPUs instead of 32-bit and Just-in-time compilers for 64-bit CPU are slowly being introduced in JavaScript engines. However, there are many inefficiencies in the currently available Just-in-time compilers for 64-bit devices. Especially, the size of code is significantly increased compared to 32-bit devices, mainly due to 64-bit wide addresses in 64-bit devices. In this paper, we are going to address the inefficiencies introduced by 64-bit wide addresses and values in the Just-in-time compiler for the V8 JavaScript engine and propose more efficient ways of generating constant values and addresses to reduce the size of code. We implemented the proposed optimization in the V8 JavaScript engine and measured the size of code as well as performance improvements with Octane and SunSpider benchmarks. We observed a 3.6% performance gain and 0.7% code size reduction in Octane and a 0.32% performance gain and 2.8% code size reduction in SunSpider.

An Expression Violating the Member Accessibility in C++ (C++에서 멤버의 접근성을 위반하는 연산)

  • Joo, Seong-Yong;Jo, Jang-Wu
    • Journal of KIISE:Software and Applications
    • /
    • v.37 no.3
    • /
    • pp.233-237
    • /
    • 2010
  • This paper addresses a problem of violating the member accessibility of a class in C++, which is not detected as an error by existing C++ compilers. The member access specifiers can be used to specify member accessibility. The C++ uses a private or protected specifier for specifying the members which cannot be accessed from outside of an object. However, the private or protected members can be accessed from outside of that object by the pointer arithmetic in C++. We show some violating examples that cannot be detected by existing C++ compilers. The contribution of this paper is to discover and define the new problem of the member accessibility.

The importance of interlanguage in teaching English as a foreign language (영어교육에서 중간언어의 중요성)

  • Park, Kyung-Ja
    • English Language & Literature Teaching
    • /
    • no.6
    • /
    • pp.113-142
    • /
    • 2000
  • In order to obtain a better understanding of L2 learners, transitional knowledges, it is very important and necessary to have a better knowledge of interlanguage. According to Corder, the role of interlanguage in English education holds significance to (1) for language teachers, (2) for language learners themselves, and (3) for language textbook compilers. To me the significance of interlanguage in English education can be described in terms of not only language teachers, learners themselves, textbook writers and compilers but pure linguists, applied linguists, school authorities as well as parents. For language learners themselves a clear understanding of interlanguage results in students being receptive to language input, and the avoidance of mental block, and low levels of foreign language anxiety. Native speakers of English (NSE) reflect not only linguistic features but also psychological, socio-linguistic, and discourse features when engaged in communication activities. This means that L2 learners are introduced to these different features, especially pragmatic features which are different from their mother tongue or L1 when engaged in communication with NSE. Hence the importance of interlanguage pragmatics should be recognized. It is very important that teachers of English should have a better understanding of interlanguage and present L2 learners with their interlanguage features so they can avoid any misunderstandings such features may cause when conversing with NSS. It should also be noted that interlanguage can form the foundation of language acquisition theory and linguistic analysis.

  • PDF

Reducing False Alarms in Schizophrenic Parallel Synchronizer Detection for Esterel (Esterel에서 동기장치 중복사용 문제 검출시 과잉 경보 줄이기)

  • Yun, Jeong-Han;Kim, Chul-Joo;Kim, Seong-Gun;Han, Tai-Sook
    • Journal of KIISE:Software and Applications
    • /
    • v.37 no.8
    • /
    • pp.647-652
    • /
    • 2010
  • Esterel is an imperative synchronous language well-adapted to control-intensive systems. When an Esterel program is translated to a circuit, the synchronizer of a parallel statement may be executed more than once in a clock; the synchronizer is called schizophrenic. Existing compilers cure the problems of schizophrenic parallel synchronizers using logic duplications. This paper proposes the conditions under which a synchronizer causes no problem in circuits when it is executed more than once in a clock. In addition we design a detection algorithm based on those conditions. Our algorithm detects schizophrenic parallel synchronizers that have to be duplicated in Esterel source codes so that compilers can save the size of synthesized circuits

Conditional Branch Optimization in the Compilers for Superscalar Processors (수퍼스칼라 프로세서를 위한 컴파일러에서 조건부 분기의 최적화)

  • Kim, Myung-Ho;Choi, Wan
    • The Transactions of the Korea Information Processing Society
    • /
    • v.2 no.2
    • /
    • pp.264-276
    • /
    • 1995
  • In this paper, a technique for eliminating conditional branches in the compilers for superscalar processors is presented. The technique consists of three major steps. The first step transforms conditional branches into equivalent expressions using algebraic laws. The second step searches all possible instruction sequences for those expressions using GSO of Granlund/Kenner. Finally an optimal sequence that has the least dynamic count for the target superscalar processor is selected from the GSO output. Experiment result shows that for each conditional branch is the input program matched by one of the optimization patterns, the proposed technique outperforms more than 25% speedup of execution time over the original code when the GNU C compiler and the SuperSPARC processor are used.

  • PDF

A Study on the Medical Reference Books Used in the Medical Compilations of the Joseon Dynasty (조선조 의학유서 편찬에 사용된 참고의서 고찰)

  • Ahn, Sang-Woo
    • The Journal of Korean Medical History
    • /
    • v.33 no.2
    • /
    • pp.105-127
    • /
    • 2020
  • The three major medical compilations of the Joseon Dynasty, Hyangyak-jipseongbang, Uibang-yuchwi, and Dongui-bogam, directly cited a total of 376 kinds of medical books. Among them, 11 medical books were commonly referred: Gyeongheom-yangbang, Deukyobang, Saminbang, Seonmyeongnon, Seongje-chongnok, Seonghyebang, Eoui-chwaryo, Yeongnyu-geombang, Wisaeng-bogam, Cheongeumbang, and Tangaek-boncho. Most of them were medical classics and formularies representing the period from the Song to the early Ming Dynasties, which most likely influenced the establishment of Joseon's medical tradition throughout the Joseon Dynasty. The reason why the majority of the medical reference books was formularies seems to be that prescription practices and the use of medicinals value knowledge with accumulated experience over a long period, whereas medical ideas and doctrines change with time. Besides, except for Eoui-chwaryo compiled in the Goryeo Dynasty, the three significant compilations referred to Chinese medical books, which indicates that the compilers made efforts to accommodate the newly introduced foreign knowledge. At the same time, the former compilations, Hyangyak-jipseongbang and Uibang-yuchwi, later appeared as primary references in Dongui-bogam's Medical Formularies of Successive Generations. However, in order to avoid overlapping the same contents, the compilers tried to form a differentiated version by extracting only the unique contents.

A Study on the IDL Compiler using the Marshal Buffer Management

  • Kim, Dong-Hyun
    • Proceedings of the Korean Institute of Information and Commucation Sciences Conference
    • /
    • v.9 no.1
    • /
    • pp.843-847
    • /
    • 2005
  • The development of distributed application in the standardized CORBA(Common Object Request Broker Architecture) environments reduces the developing time and maintaining cost of the systems. Because of these advantages, the development of application is being progressed in the several fields using the CORBA environments. The programmers in the CORBA environments usually develop the application programs using the CORBA IDL(Interface Definition Language). The IDL files are compiled by IDL compiler and translated into the stubs and skeleton codes which are mapped onto particular target language. The stubs produced by IDL compilers processes the marshaling a data into message buffer. Before a stub can marshal a data into its message buffer, the stub must ensure that the buffer has at least enough free space to contain the encoded representation of the data. But, the stubs produced by typical IDL compilers check the amount of free buffer space before every atomic data is marshaled, and if necessary, expand the message buffer. These repeated tests are wasteful and incidence of overheads, especially if the marshal buffer space must be continually expanded. Thus, the performance of the application program may be poor. In this paper, we suggest the way that the stub code is maintain the enough free space before marshaling the data into message buffer. This methods were analyzes the overall storage requirements of every message that will be exchanged between client and server. For these analysis, in the Front End of compiler has maintain the information that the storage requirements and alignment constraints for data types. Thus, stub code is optimized and the performance of application program is increased.

  • PDF