2,838 research outputs found

    Towards a portable and future-proof particle-in-cell plasma physics code

    Get PDF
    We present the first reported OpenCL implementation of EPOCH3D, an extensible particle-in-cell plasma physics code developed at the University of Warwick. We document the challenges and successes of this porting effort, and compare the performance of our implementation executing on a wide variety of hardware from multiple vendors. The focus of our work is on understanding the suitability of existing algorithms for future accelerator-based architectures, and identifying the changes necessary to achieve performance portability for particle-in-cell plasma physics codes. We achieve good levels of performance with limited changes to the algorithmic behaviour of the code. However, our results suggest that a fundamental change to EPOCH3D’s current accumulation step (and its dependency on atomic operations) is necessary in order to fully utilise the massive levels of parallelism supported by emerging parallel architectures

    Characterizing and Detecting Duplicate Logging Code Smells

    Get PDF
    Developers rely on software logs for a wide variety of tasks, such as debugging, testing, program comprehension, verification, and performance analysis. Despite the importance of logs, prior studies show that there is no industrial standard on how to write logging statements. Recent research on logs often only considers the appropriateness of a log as an individual item (e.g., one single logging statement); while logs are typically analyzed in tandem. In this thesis, we focus on studying duplicate logging statements, which are logging statements that have the same static text message. Such duplications in the text message are potential indications of logging code smells, which may affect developers’ understanding of the dynamic view of the system. We manually studied over 3K duplicate logging statements and their surrounding code in four large-scale open source systems: Hadoop, CloudStack, ElasticSearch, and Cassandra. We uncovered five patterns of duplicate logging code smells. For each instance of the code smell, we further manually identify the problematic (i.e., require fixes) and justifiable (i.e., do not require fixes) cases. Then, we contact developers in order to verify our manual study result. We integrated our manual study result and developers’ feedback into our automated static analysis tool, DLFinder, which automatically detects problematic duplicate logging code smells. We evaluated DLFinder on the four manually studied systems and four additional systems: Kafka, Flink, Camel and Wicket. In total, combining the results of DLFinder and our manual analysis, we reported 91 problematic code smell instances to developers and all of them have been fixed. This thesis provides an initial step on creating a logging guideline for developers to improve the quality of logging code. DLFinder is also able to detect duplicate logging code smells with high precision and recall

    Feasibility study of an Integrated Program for Aerospace vehicle Design (IPAD). Volume 6: IPAD system development and operation

    Get PDF
    The strategy of the IPAD implementation plan presented, proposes a three phase development of the IPAD system and technical modules, and the transfer of this capability from the development environment to the aerospace vehicle design environment. The system and technical module capabilities for each phase of development are described. The system and technical module programming languages are recommended as well as the initial host computer system hardware and operating system. The cost of developing the IPAD technology is estimated. A schedule displaying the flowtime required for each development task is given. A PERT chart gives the developmental relationships of each of the tasks and an estimate of the operational cost of the IPAD system is offered

    Modelling of Maintenance ServiceWorkshop and Inventory Operations for a Short Cycle Operational Region.

    Get PDF
    The North Sea region sees a high operational cycle of tools that require frequent maintenance check-ups, repairs, and preparations for subsequent operations. Given the quick-paced nature of these operations, the availability of spare parts at the maintenance workshop is critical for maintaining minimal flowtime. Adding to the challenge is the practice of sourcing spare parts from best-cost countries, leading to a lead time of approximately one year, thus necessitating an optimal economic order quantity and reorder point. The balancing act between maintaining sufficient inventory at the workshop and managing operational expenses through batch ordering of spare parts is a complex one. Frequent supply requirements contribute to the environmental impacts through increased spare part scrap rates. With these challenges in mind, this thesis aims to develop a simulation model capable of quantifying the costs and benefits associated with reusing repaired spares, as compared to procuring newly built spares from best-cost countries. To achieve this, a case study focusing on a specific maintenance workshop within the North Sea region was carried out. The comprehensive tool repair and spare part supply operations were conceptualized and modeled using a simulation approach. Two operational scenarios were simulated: the first, where the maintenance workshop was completely dependent on newly built spares sourced from best-cost countries, with no inventory stock dedicated for spares re-usage. In the second scenario, the workshop primarily relied on repaired spares, with a safety level of new build stock maintained. The results, guided by the research question probing the impact of implementing a repair-path cycle process within the maintenance process, showed that the enhanced model significantly outperformed the baseline model across several key metrics over a model time run of three years. These include a 78% reduction in lead times, a 116% improvement in worker utilization, a 73% reduction in crowding levels, a 52% reduction in scrap rate, and a potential profit increase of roughly three million NOK (20%). This thesis provides evidence that the enhanced model, with its focus on repaired spares, presents a more sustainable, efficient, and profitable solution to the challenges of inventory management in highcycle operations. It is important to note, however, that the sensitivity of these results is closely tied to the high procurement lead times

    Simulation and optimization model for the construction of electrical substations

    Get PDF
    One of the most complex construction projects is electrical substations. An electrical substation is an auxiliary station of an electricity generation, transmission and distribution system where voltage is transformed from high to low or the reverse using transformers. Construction of electrical substation includes civil works and electromechanical works. The scope of civil works includes construction of several buildings/components divided into parallel and overlapped working phases that require variety of resources and are generally quite costly and consume a considerable amount of time. Therefore, construction of substations faces complicated time-cost-resource optimization problems. On another hand, the construction industry is turning out to be progressively competitive throughout the years, whereby the need to persistently discover approaches to enhance construction performance. To address the previously stated afflictions, this dissertation makes the underlying strides and introduces a simulation and optimization model for the execution processes of civil works for an electrical substation based on database excel file for input data entry. The input data include bill of quantities, maximum available resources, production rates, unit cost of resources and indirect cost. The model is built on Anylogic software using discrete event simulation method. The model is divided into three zones working in parallel to each other. Each zone includes a group of buildings related to the same construction area. Each zone-model describes the execution process schedule for each building in the zone, the time consumed, percentage of utilization of equipment and manpower crews, amount of materials consumed and total direct and indirect cost. The model is then optimized to mainly minimize the project duration using parameter variation experiment and genetic algorithm java code implemented using Anylogic platform. The model used allocated resource parameters as decision variables and available resources as constraints. The model is verified on real case studies in Egypt and sensitivity analysis studies are incorporated. The model is also validated using a real case study and proves its efficiency by attaining a reduction in model time units between simulation and optimization experiments of 10.25% and reduction in total cost of 4.7%. Also, by comparing the optimization results by the actual data of the case study, the model attains a reduction in time and cost by 13.6% and 6.3% respectively. An analysis to determine the effect of each resource on reduction in cost is also presented

    FluidDyn: a Python open-source framework for research and teaching in fluid dynamics

    Get PDF
    FluidDyn is a project to foster open-science and open-source in the fluid dynamics community. It is thought of as a research project to channel open-source dynamics, methods and tools to do science. We propose a set of Python packages forming a framework to study fluid dynamics with different methods, in particular laboratory experiments (package fluidlab), simulations (packages fluidfft, fluidsim and fluidfoam) and data processing (package fluidimage). In the present article, we give an overview of the specialized packages of the project and then focus on the base package called fluiddyn, which contains common code used in the specialized packages. Packages fluidfft and fluidsim are described with greater detail in two companion papers, Mohanan et al. (2018a,b). With the project FluidDyn, we demonstrate that specialized scientific code can be written with methods and good practices of the open-source community. The Mercurial repositories are available in Bitbucket (https://bitbucket.org/fluiddyn/). All codes are documented using Sphinx and Read the Docs, and tested with continuous integration run on Bitbucket, Pipelines and Travis. To improve the reuse potential, the codes are as modular as possible, leveraging the simple object-oriented programming model of Python. All codes are also written to be highly efficient, using C++, Cython and Pythran to speedup the performance of critical functions

    Between Worlds: Securing Mixed JavaScript/ActionScript Multi-Party Web Content

    Get PDF
    Mixed Flash and JavaScript content has become increasingly prevalent; its purveyance of dynamic features unique to each platform has popularized it for myriad Web development projects. Although Flash and JavaScript security has been examined extensively, the security of untrusted content that combines both has received considerably less attention. This article considers this fusion in detail, outlining several practical scenarios that threaten the security of Web applications. The severity of these attacks warrants the development of new techniques that address the security of Flash-JavaScript content considered as a whole, in contrast to prior solutions that have examined Flash or JavaScript security individually. Toward this end, the article presents FlashJaX, a cross-platform solution that enforces fine-grained, history-based policies that span both Flash and JavaScript. Using in-lined reference monitoring, FlashJaX safely embeds untrusted JavaScript and Flash content in Web pages without modifying browser clients or using special plug-ins. The architecture of FlashJaX, its design and implementation, and a detailed security analysis are exposited. Experiments with advertisements from popular ad networks demonstrate that FlashJaX is transparent to policy-compliant advertisement content, yet blocks many common attack vectors that exploit the fusion of these Web platforms
    corecore