Porta-SIMD: an Optimally Portable SIMD Programming Language Duke CS-1990-12 UNC CS TR90-021 May 1990

Total Page:16

File Type:pdf, Size:1020Kb

Porta-SIMD: an Optimally Portable SIMD Programming Language Duke CS-1990-12 UNC CS TR90-021 May 1990 Porta-SIMD: An Optimally Portable SIMD Programming Language Duke CS-1990-12 UNC CS TR90-021 May 1990 Russ Tuck Duke University Deparment of Computer Science Durham, NC 27706 The University of North Carolina at Chapel Hill Department of Computer Science CB#3175, Sitterson Hall Chapel Hill, NC 27599-3175 Text (without appendix) of a Ph.D. dissertation submitted to Duke University. The research was performed at UNC. @ 1990 Russell R. Tuck, III UNC is an Equal Opportunity/Atlirmative Action Institution. PORTA-SIMD: AN OPTIMALLY PORTABLE SIMD PROGRAMMING LANGUAGE by Russell Raymond Tuck, III Department of Computer Science Duke University Dissertation submitte in partial fulfillment of the requirements for the degree of Doctor of Philosophy in the Department of Computer Science in the Graduate School of Duke University 1990 Copyright © 1990 by Russell Raymond Tuck, III All rights reserved Abstract Existing programming languages contain architectural assumptions which limit their porta­ bility. I submit optimal portability, a new concept which solves this language design problem. Optimal portability makes it possible to design languages which are portable across vari­ ous sets of diverse architectures. SIMD (Single-Instruction stream, Multiple-Data stream) computers represent an important and very diverse set of architectures for which to demon­ strate optimal portability. Porta-SIMD (pronounced "porta.-simm'd") is the first optimally portable language for SIMD computers. It was designed and implemented to demonstrate that optimal portability is a useful and achievable standard for language design. An optimally portable language allows each program to specify the architectural features it requires. The language then enables the compiled program to exploit exactly those fea.­ tures, and to run on all architectures that provide them. An architecture's features are those it can implement with a constant-bounded number of operations. This definition of optimal portability ensures reasonable execution efficiency, and identifies architectural differences relevant to algorithm selection. An optimally portable language for a set of architectures must accommodate all the features found in the members of that set. There was no suitable taxonomy to identify the features of SIMD architectures. Therefore, the taxonomy created and used in the design of Porta-SIMD is presented. Porta.-SIMD is an optimally portable, full-featured, SIMD language. It provides dynamic allocation of parallel data with dynamically determined sizes. Generic subroutines which operate on any size of data may also be written in Porta-SIMD. Some important commercial SIMD languages do not provide these features. A prototype implementation of Porta-SIMD has been developed as a set of #include files and libraries used with an ordinary C++ compiler. This approach has allowed more rapid prototyping and language experimentation than a custom compiler would have, but modestly constrained the language's syntax. The result is a very portable but only moderately efficient implementation. Porta-SIMD has been implemented for the Connection Machine 2, for Pixel-Planes 4 and 5, and for ordinary sequential machines. Optimal portability is an important new concept for developing portable languages which can handle architectural diversity. Porta.-SIMD demonstrates its usefulness with SIMD computers. ll Abstract Acknowledgements I am most thankful to God, who has made possible what I could n0t have done alone. He enabled me to finish work which looked like it could drag on forever, and to do it in time for an impossible looking graduation deadline. He taught me a lot about faith, trust, prayer, and His peace in the process. He has given me a wonderful wife, Debbi, who loves me and makes life fun. Most of all, God gave His son Jesus to die for my failures and give me new life with meaning and hope. I appreciate Debbi's unending patience, prayers, sacrifice, and encouragement. These have been especially important during my final push to finish, during which she has been busy finishing her own graduate degree. Our family, our church and some special friends have joined in with encouragement and prayers, for which I am very grateful. Dad's quick mid-day phone calls from California several times over the last few weeks were especially helpful. Dr. Frederick P. Brooks, Jr. has been the consummate advisor. He .has provided critically important insight, advice, and perspective. He has regularly and dependably scheduled time for our meetings, despite the many demands on his time, and that has been very important to my steady progress. I am grateful to Dr. Brooks for accepting me as his student and providing me with assured grant support, guidance, and freedom, even when all I knew about my research goals was that I wanted to improve the programming of SIMD computers. I appreciate his deep Christian faith, and have enjoyed participating in Wednesday lunch Bible studies with him. I appreciate my committee for their encouragement and sound advice. Dr. Henry Fuchs has supported my work financially as part of the Pixel-Planes project since I began working on Porta-SIMD, and has been very supportive personally as well. Dr. Merrell Patrick also served on my M.S. committee, and has shown a personal interest in my success that was especially helpful during my transition into doctoral research. Dr. Jothy Rosenberg's ideas, interestj and personality have made him a very valuable source of encouraging advice and positive suggestions. Dr. John Board has provided sound comments and helpful references. I appreciate Dr. Jan F. Prins' service on my committee as an ex officio member, doing significant work without official recognition. He has often been the most accessible member of my committee, and has served as a valuable sounding board for ideas and dilemmas. Greg Turk, a fellow graduate student and member of the Pixel-Planes team, has been valuable as a pioneering Porta-SIMD user and for his willingness to discuss and comment on how Porta-SIMD should work. I appreciate his willingness and that of Tim Cullip for me to use their programs as examples and include them in this dissertation. I want to thank Michael Tiemann for writing G++ (the GNU C++ compiler), for making it freely available, and for providing timely fixes to compiler bugs as they were reported. I appreciate the encouragement and friendship of many members of the Duke and UNC Computer Science Departments, including especially my long-time office mates at Duke, Jack Briner and Mark Jones, and the entire Pixel-Planes team at UNC. I appreciate the time Carlton Brown and Debbi Tuck spent patiently and carefully iii iv Acknowledgements reading drafts of this document to point out and suggest corrections for my writing errors. I appreciate the time Herb Taylor of the David Sarnoff Research Center spent helping me understand details of the Princeton Engine, and also his friendship and encouragement. Several institutions have been important to my research. The Departments of Computer Science at the University of North Carolina at Chapel Hill and Duke University have pro­ vided critically important computing resources and office space. My research at UNC has been supported by the Pixel-Planes Project, Drs. Henry Fuchs and John Poulton, P.I.s, and its grants: National Science Foundation grant #MIP-8601552, Defense Advanced Research Projects Agency order #6090, Office of Naval Research contract #N0014-86-K-0680; and by the GRIP Project, Frederick Brooks, P.I., under National Institutes of Health grant #RR 02170. Access to a Connection Machine was provided first by the Advanced Computing Research Facility (ACRF) at Argonne National Laboratories, under grants NSF-ASC-8808327 and DOE-W-31-109-ENG-38, and more recently by the Connection Machine Network Server (CMNS) Pilot Facility at Thinking Machines Corporation under DARPA contract DACA76- 88-C-0012. Contents Abstract i Acknowledgements iii 1 Introduction, Thesis, and Overview 1 2 Optimal Portability 5 3 A SIMD Taxonomy for Optimal Portability 11 3.1 Definition of SIMD Architectures .. 11 3.2 Taxonomy of SIMD Architectures . 12 3.2.1 Feature Names . 14 3.2.2 Communication . 14 3.2.2.1 Labeling (number, N) .. 17 3.2.2.2 Communication (C) ... 17 3.2.2.3 Collision Resolution, Write (W) . 19 3.2.2.4 Collision Resolution, Fetch (F) . 20 3.2.2.5 Piped Communication (P) . 20 3.2.2.6 Cut-Through Communication (T) 21 3.2.3 Local Addressing . 22 3.2.3.1 LocaJ Addressing (L) .. 23 3.2.4 Reduce and S~an . 24 3.2.4.1 Reduce (R) ....... 24 3.2.4.2 Scan (S) ..... 25 3.2.5 Parallel I/0 .............................. 25 3.2.5.1 Input (I) .......................... 25 3.2.5.2 Output (0) . ..... 25 3.2.6 PE to Host I/0 . 26 3.2.6.1 Get (G) . ..... 26 3.2.7 Naming a Classification ....................... 26 3.3 The Taxonomy in Use . 26 3.3.1 PxP14 (Pixel-Planes 4) . ..... 29 3.3.2 Oldfield (Oldfield et a!.) ....................... 30 3.3.3 PxP15 (Pixel-Planes 5) . 30 3.3.4 AIS-5000 (Applied Intelligent Systems, Inc.) ............ 30 3.3.5 Centipede . 30 3.3.6 Princeton Engine . .. 31 3.3.7 ASP (Associative String Processor) .......... 31 3.3.8 llliac IV . 31 v vi CONTENTS 3.3.9 SOLOMON (Simultaneous Operation Linked Ordinal MOdular Net- work) . 32 3.3.10 MPP (Massively Paral~el Processor) 32 3.3.11 DAP (Distributed Array Processor) 32 3.3.12 BLITZEN . 32 3.3.13 YUPPIE (Yorktown Ultra Parallel Polymorphic Image Engine) 33 3.3.14 Unger (S. H. Unger) . 33 3.3.15 GAM Pyramid (George Mason University, Adder pyramid, MPP cir- cuits, Pyramidal topology) . 33 3.3.16 BVM (Boolean Vector Machine) . 33 3.3.17 GFll (11-Gflop target performance) . 34 3.3.18 BSP (Burroughs Scientific Processor) 34 3.3.19 MP-1 (MasPar Computer Corp.) .
Recommended publications
  • Pnw 2020 Strunk001.Pdf
    Remote Sensing of Environment 237 (2020) 111535 Contents lists available at ScienceDirect Remote Sensing of Environment journal homepage: www.elsevier.com/locate/rse Evaluation of pushbroom DAP relative to frame camera DAP and lidar for forest modeling T ∗ Jacob L. Strunka, , Peter J. Gouldb, Petteri Packalenc, Demetrios Gatziolisd, Danuta Greblowskae, Caleb Makif, Robert J. McGaugheyg a USDA Forest Service Pacific Northwest Research Station, 3625 93rd Ave SW, Olympia, WA, 98512, USA b Washington State Department of Natural Resources, PO Box 47000, 1111 Washington Street, SE, Olympia, WA, 98504-7000, USA c School of Forest Sciences, Faculty of Science and Forestry, University of Eastern Finland, P.O. Box 111, 80101, Joensuu, Finland d USDA Forest Service Pacific Northwest Research Station, 620 Southwest Main, Suite 502, Portland, OR, 97205, USA e GeoTerra Inc., 60 McKinley St, Eugene, OR, 97402, USA f Washington State Department of Natural Resources, PO Box 47000, 1111 Washington Street SE, Olympia, WA, 98504-7000, USA g USDA Forest Service Pacific Northwest Research Station, University of Washington, PO Box 352100, Seattle, WA, 98195-2100, USA ARTICLE INFO ABSTRACT Keywords: There is growing interest in using Digital Aerial Photogrammetry (DAP) for forestry applications. However, the Lidar performance of pushbroom DAP relative to frame-based DAP and airborne lidar is not well documented. Interest Structure from motion in DAP stems largely from its low cost relative to lidar. Studies have demonstrated that frame-based DAP Photogrammetry generally performs slightly poorer than lidar, but still provides good value due to its reduced cost. In the USA Forestry pushbroom imagery can be dramatically less expensive than frame-camera imagery in part because of a na- DAP tionwide collection program.
    [Show full text]
  • GUIDE to INTERNATIONAL UNIVERSITY ADMISSION About NACAC
    GUIDE TO INTERNATIONAL UNIVERSITY ADMISSION About NACAC The National Association for College Admission Counseling (NACAC), founded in 1937, is an organization of 14,000 professionals from around the world dedicated to serving students as they make choices about pursuing postsecondary education. NACAC is committed to maintaining high standards that foster ethical and social responsibility among those involved in the transition process, as outlined in the NACAC’s Guide to Ethical Practice in College Admission. For more information and resources, visit nacacnet.org. The information presented in this document may be reprinted and distributed with permission from and attribution to the National Association for College Admission Counseling. It is intended as a general guide and is presented as is and without warranty of any kind. While every effort has been made to ensure the accuracy of the content, NACAC shall not in any event be liable to any user or any third party for any direct or indirect loss or damage caused or alleged to be caused by the information contained herein and referenced. Copyright © 2020 by the National Association for College Admission Counseling. All rights reserved. NACAC 1050 N. Highland Street Suite 400 Arlington, VA 22201 800.822.6285 nacacnet.org COVID-19 IMPACTS ON APPLYING ABROAD NACAC is pleased to offer this resource for the fifth year. NACAC’s Guide to International University Admission promotes study options outside students’ home countries for those who seek an international experience. Though the impact the current global health crisis will have on future classes remains unclear, we anticipate that there will still be a desire among students—perhaps enhanced as a result of COVID-19, to connect with people from other cultures and parts of the world, and to pursue an undergraduate degree abroad.
    [Show full text]
  • User Guide - Opendap Documentation
    User Guide - OPeNDAP Documentation 2017-10-12 Table of Contents 1. About This Guide . 1 2. What is OPeNDAP. 1 2.1. The OPeNDAP Client/Server . 2 2.2. OPeNDAP Services . 3 2.3. The OPeNDAP Server (aka "Hyrax"). 4 2.4. Administration and Centralization of Data . 5 3. OPeNDAP Data Model . 5 3.1. Data and Data Models . 5 4. OPeNDAP Messages . 17 4.1. Ancillary Data . 17 4.2. Data Transmission . 23 4.3. Other Services . 24 4.4. Constraint Expressions . 27 5. OPeNDAP Server (Hyrax) . 34 5.1. The OPeNDAP Server. 34 6. OPeNDAP Client . 37 6.1. Clients . 38 1. About This Guide This guide introduces important concepts behind the OPeNDAP data model and Web API as well as the clients and servers that use them. While it is not a reference for any particular client or server, you will find links to particular clients and servers in it. 2. What is OPeNDAP OPeNDAP provides a way for researchers to access scientific data anywhere on the Internet, from a wide variety of new and existing programs. It is used widely in earth-science research settings but it is not limited to that. Using a flexible data model and a well-defined transmission format, an OPeNDAP client can request data from a wide variety of OPeNDAP servers, allowing researchers to enjoy flexibility similar to the flexibility of the web. There are different implementations of OPeNDAP produced by various open source NOTE organizations. This guide covers the implementation of OPeNDAP produced by the OPeNDAP group. The OPeNDAP architecture uses a client/server model, with a client that sends requests for data out onto the network to a server, that answers with the requested data.
    [Show full text]
  • ESAIL D3.3.4 Auxiliary Tether Reel Test Report
    WP 3.3 “Auxiliary tether reel”, Deliverable D3.3.4 ESAIL ESAIL D3.3.4 Auxiliary tether reel test report Work Package: WP 3.3 Version: Version 1.0 Prepared by: DLR German Aerospace Center, Roland Rosta Time: Bremen, June 18th, 2013 Coordinating person: Pekka Janhunen, [email protected] 1 WP 3.3 “Auxiliary tether reel”, Deliverable D3.3.4 ESAIL Document Change Record Pages, Tables, Issue Rev. Date Modification Name Figures affected 1 0 18 June 2013 All Initial issue Rosta 2 WP 3.3 “Auxiliary tether reel”, Deliverable D3.3.4 ESAIL Table of Contents 1. Scope of this Document ......................................................................................................................... 5 2. Test Item Description ............................................................................................................................ 6 2.1. Auxiliary Tether Reel...................................................................................................................... 6 3. Test Results ............................................................................................................................................ 7 3.1. Shock and Vibration Tests .............................................................................................................. 7 3.2. Thermal Vacuum Tests ................................................................................................................. 10 4. Appendix .............................................................................................................................................
    [Show full text]
  • Optimization of Virtual Power Plant in Nordic Electricity Market
    DEGREE PROJECT IN ELECTRICAL ENGINEERING, SECOND CYCLE, 30 CREDITS STOCKHOLM, SWEDEN 2019 Optimization of Virtual Power Plant in Nordic Electricity Market JWALITH DESU KTH ROYAL INSTITUTE OF TECHNOLOGY SCHOOL OF ELECTRICAL ENGINEERING AND COMPUTER SCIENCE KTH Royal Institute of Technology Master Thesis Optimization of Virtual Power Plant in the Nordic Electricity Market Author: Jwalith Desu Supervisor: Dr. Mohammad Reza Hesamzadeh Examiner: Dr. Mohammad Reza Hesamzadeh A thesis submitted in fulfilment of the requirements for the degree of Master of Science in the Electricity Market Research Group (EMReG) School of Electrical Engineering October 2019 Declaration of Authorship I, Jwalith DESU, declare that this thesis titled, 'Optimization of Virtual Power Plant in the Nordic Electricity Market' and the work presented in it are my own. I confirm that: This work was done wholly or mainly while in candidature for a research degree at this University. Where any part of this thesis has previously been submitted for a degree or any other qualification at this University or any other institution, this has been clearly stated. Where I have consulted the published work of others, this is always clearly at- tributed. Where I have quoted from the work of others, the source is always given. With the exception of such quotations, this thesis is entirely my own work. I have acknowledged all main sources of help. Where the thesis is based on work done by myself jointly with others, I have made clear exactly what was done by others and what I have contributed myself. Signed: Date: i Abstract With the world becoming more conscious about achieving 1.5-degree scenario as promised by the most powerful economies of the world, much needed push was received by the renewable energy technology providers.
    [Show full text]
  • Maple Park Parent Handbook
    MAPLE PARK MIDDLE SCHOOL - PARENT HANDBOOK 2018-2019- FUTURE GRIFFINS . available at schoo l offices aad d;,o,;c,w,bs;Oe • Official Boar d o f Education pohwww.c~1es nkcschools.org Parent/Student Handbook Welcome to Maple Park Middle School Dr. Brian Van Batavia, Principal Reagan Allegri, Assistant Principal Andrea Stauch, Assistant Principal 5300 N. Bennington Ave Kansas City, Missouri 64119 816-321-5280 www.nkcschools.org/mpms/ General Phone Information Maple Park Office 321-5280 6:45–2:45 p.m. Attendance 321-5282 24 hours Fax 321-5281 24 hours School Nurse 321-5283 7:45–3:00 p.m. Maple Park Cafeteria 321-5284 7:30–2:00 p.m. Central Office 321-5000 8:00–5:00 p.m. Transportation 321-5007 8:00–5:00 p.m. School Hours Office hours: 6:45 a.m.–2:45 p.m. Class hours: 7:15 a.m.–2:12 p.m. Early Release Thursday: 7:15 a.m.-1:37 p.m. Activities: 2:15 p.m.–4:45 p.m. July 5, 2018 Dear Maple Park Families, Welcome to Maple Park for the 2018-2019 School Year! I am looking forward to growing and learning with each of you as this will be my third year at Maple Park! I love middle school and the vast amounts of maturity that is achieved by the students during these years. I can’t wait to get to know each one of you. We are so fortunate to expand our attendance area and welcome new families into our school community.
    [Show full text]
  • Large Area Forest Yield Estimation with Pushbroom Digital Aerial Photogrammetry
    Article Large Area Forest Yield Estimation with Pushbroom Digital Aerial Photogrammetry Jacob Strunk 1,*, Petteri Packalen 2, Peter Gould 3, Demetrios Gatziolis 4, Caleb Maki 5, Hans-Erik Andersen 6 and Robert J. McGaughey 6 1 USDA Forest Service Pacific Northwest Research Station, 3625 93rd Ave SW, Olympia, WA 98512, USA 2 School of Forest Sciences, Faculty of Science and Forestry, University of Eastern Finland, P.O. Box 111, 80101 Joensuu, Finland; [email protected] 3 Washington State Department of Natural Resources, P.O. Box 47000 and 1111 Washington Street SE Olympia, WA 98504-7000, USA; [email protected] 4 USDA Forest Service Pacific Northwest Research Station, 620 Southwest Main Suite 400 Portland, OR 97205, USA; [email protected] 5 Washington State Department of Natural Resources, P.O. Box 47000, 1111 Washington Street SE Olympia, WA 98504-7000, USA; [email protected] 6 USDA Forest Service Pacific Northwest Research Station, University of Washington, P.O. Box 352100, Seattle, WA 98195-2100, USA; [email protected] (H.-E.A.); [email protected] (R.J.M.) * Correspondence: [email protected] Received: 5 February 2019; Accepted: 1 May 2019; Published: 7 May 2019 Abstract: Low-cost methods to measure forest structure are needed to consistently and repeatedly inventory forest conditions over large areas. In this study we investigate low-cost pushbroom Digital Aerial Photography (DAP) to aid in the estimation of forest volume over large areas in Washington State (USA). We also examine the effects of plot location precision (low versus high) and Digital Terrain Model (DTM) resolution (1 m versus 10 m) on estimation performance.
    [Show full text]
  • Quickstart - Opendap
    QuickStart - OPeNDAP 2017-10-12 Table of Contents 1. Introduction. 1 1.1. Key Terms . 1 2. What to do With an OPeNDAP URL . 1 2.1. An Easy Way: Using the Browser-Based OPeNDAP Server Dataset Access Form . 2 2.2. A More Flexible Way: Using Commands in a Browser . 5 3. Finding OPeNDAP URLs . 13 3.1. Google . 13 3.2. GCMD. 13 3.3. Web Interface . 13 4. Further Analysis . 14 1. Introduction OPeNDAP is the developer of client/server software, of the same name, that enables scientists to share data more easily over the internet. The OPeNDAP group is also the original developer of the Data Access Protocol (DAP) that the software uses. Many other groups have adopted DAP and provide compatible clients, servers, and SDKs. OPeNDAP’s DAP is also a NASA community standard. For the rest of this document, "OPeNDAP" will refer to the software. With OPeNDAP, you can access data using an OPeNDAP URL of any database server that supports OPeNDAP. You can do this via command-line, Internet browser, or a custom UI. You can also use other NetCFD complaint tools, such asMatlab, R, IDL, IDV, and Panoply. Note that OPeNDAP data is, by default, stored and transmitted in binary form. In addition to its native data representation format, OPeNDAP can get data in the following formats: NetCDF, GeoTIFF, JPEG2000, JSON, ASCII. This quick start guide covers how to use OPeNDAP in a typical web browser, such as Firefox, Chrome, or Safari, to discover information about data that is useful when creating database queries.
    [Show full text]
  • Download (1MB)
    Developing Policy Inputs for Efficient Trade and Sustainable Development Using Data Analysis Mini.K.G Senior Scientist, Fisheries Resources Assessment Division Central Marine Fisheries Research Institute, Kochi Email: [email protected] Introduction Trade forms a vital part of the world economy. The analysis of data on trade and related parameters plays a pivotal role in developing policy inputs for efficient trade and sustainable development. It is evident that the success of any type of analysis depends on the availability of the suitable type of data. In general, time series, cross sectional and pooled data are the three types of data available for trade analysis. Time series data are characterized by observations collected at regular intervals over a period of time while cross-sectional data are data on one or more variables collected at the same point of time. The pooled data is a combination of time series and cross-sectional data. For example, panel data, which is a special type of pooled data is used to study the relationship between trade flows and trade barriers over time. In recent years, the quantitative and qualitative analysis of trade and the effects of policies have grown sharply. This was due to the advances in the theoretical and analytical techniques as well as increased computational and data processing power of computers. A multitude of analysis tools are available in today’s world for a thorough and scientifically valid analysis of data. There are several choices available for the user to choose from – ranging from the general public license packages, analysis packages with statistical add-ons, general purpose languages with statistics libraries to the advanced proprietary packages.
    [Show full text]
  • Plantgl: a Python-Based Geometric Library for 3D Plant Modelling At
    PlantGL: A Python-based geometric library for 3D plant modelling at different scales Christophe Pradal, Frédéric Boudon, Christophe Nouguier, Jérôme Chopard, Christophe Godin To cite this version: Christophe Pradal, Frédéric Boudon, Christophe Nouguier, Jérôme Chopard, Christophe Godin. PlantGL: A Python-based geometric library for 3D plant modelling at different scales. Graphical Models, Elsevier, 2009, 71 (1), 1–21, posted-at = 2008-11-04 14:10:07. 10.1016/j.gmod.2008.10.001. hal-00850782 HAL Id: hal-00850782 https://hal.inria.fr/hal-00850782 Submitted on 8 Aug 2013 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. PlantGL: a Python-based geometric library for 3D plant modelling at different scales C. Pradal a 1 , F. Boudon a,∗1, C. Nouguier a, J. Chopard b, C. Godin b aCIRAD, Virtual Plants INRIA Project-Team, UMR DAP, Montpellier, F-34398 France. bINRIA, Virtual Plants INRIA Project-Team, UMR DAP, Montpellier, F-34398 France. Abstract In this paper, we present PlantGL, an open-source graphic toolkit for the creation, simulation and analysis of 3D virtual plants. This C++ geometric library is embedded in the Python language which makes it a powerful user-interactive platform for plant modeling in various biological application domains.
    [Show full text]
  • Building Micropython with KEIL and Programming with Python on I.MX RT1050/1060 Rev
    AN13242 Building Micropython with KEIL and Programming with Python on i.MX RT1050/1060 Rev. 0 — 27 April, 2021 Application Note Contents 1 Introduction 1 Introduction......................................1 This application note introduces the porting of MicroPython, the packaging of 2 Hardware platform...........................1 2.1 i.MX RT1050/60 crossover peripheral functions, and the adaptation of circuit boards, using the example process........................................ 1 of our work on the i.MX RT1050/1060EVK development board. The code are 2.2 i.MX RT1050/60 EVK board........ 1 mainly written in C language, but are presented to the users as Python modules 3 Micropython.....................................2 and types. You can either evaluate and use MicroPython on this development 3.1 Brief introduction to Python board, or use it to port and adapt your new board design. MicroPython’s native Language.....................................2 project management and build environment is based on GCC and Make under 3.2 Brief introduction to Micropython Linux. To facilitate the development habits of most MCU embedded engineers, .....................................................3 the development environment is also ported to Keil MDK5. 4 Building and running Micropython on i.MX RT1050/1060 EVK.................. 3 The readers are expected to have basic experience of development with KEIL 4.1 Downloading source code........... 3 MDK, knowing what is CMSIS-Pack, the concept of target in KEIL and how to 4.2 Opening project with KEIL
    [Show full text]
  • Openalea: a Visual Programming and Component-Based Software Platform for Plant Modelling
    CSIRO PUBLISHING www.publish.csiro.au/journals/fpb Functional Plant Biology, 2008, 35, 751–760 OpenAlea: a visual programming and component-based software platform for plant modelling Christophe Pradal A,D, Samuel Dufour-Kowalski B, Frédéric Boudon A, Christian Fournier C and Christophe Godin B ACIRAD, UMR DAP and INRIA, Virtual Plants, TA A-96/02, 34398 Montpellier Cedex 5, France. BINRIA, UMR DAP, Virtual Plants, TA A-96/02, 34398 Montpellier Cedex 5, France. CINRA, UMR 759 LEPSE, 2 place Viala, 34060 Montpellier cedex 01, France. DCorresponding author. Email: [email protected] This paper originates from a presentation at the 5th International Workshop on Functional–Structural Plant Models, Napier, New Zealand, November 2007. Abstract. The development of functional–structural plant models requires an increasing amount of computer modelling. All these models are developed by different teams in various contexts and with different goals. Efficient and flexible computational frameworks are required to augment the interaction between these models, their reusability, and the possibility to compare them on identical datasets. In this paper, we present an open-source platform, OpenAlea, that provides a user-friendly environment for modellers, and advanced deployment methods. OpenAlea allows researchers to build models using a visual programming interface and provides a set of tools and models dedicated to plant modelling. Models and algorithms are embedded in OpenAlea ‘components’ with well defined input and output interfaces that can be easily interconnected to form more complex models and define more macroscopic components. The system architecture is based on the use of a general purpose, high-level, object-oriented script language, Python, widely used in other scientific areas.
    [Show full text]