首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 8 毫秒
1.
Programmers can no longer rely solely on micro‐architectural and technology improvements to have their programs running faster. In today's multicore chips, parallel code needs to be explicitly written to extract any benefits from the extra available processing power. A recently proposed technique to parallelize general‐purpose programs' loops at the binary level, called decoupled software pipeline (DSWP), has shown good performance numbers only under the assumption of a fast hardware intercore communication queue. In this paper, we propose Java‐DSWP, a source‐level DSWP‐based parallelization technique that is much simpler than original DSWP and can be used to effectively parallelize Java applications. In addition, we propose and evaluate a software intercore communication scheme that enables code parallelized through Java‐DSWP to be executed in commodity machines, thus not requiring a hardware intercore communication queue to be efficient, as DSWP does. We analyze three memory communication queue implementations and show experimental results that reveal an average 48% speedup on some SPCjvm2008 benchmarks. Copyright © 2012 John Wiley & Sons, Ltd.  相似文献   

2.
为解决高软件复杂度问题,提出了一种面向对象编程、面向切面编程和多层架构模块化相互结合的方法.该方法充分利用了面向切面编程的横切特性和多层架构模块化特点,并使用层次分析方法作为度量的参考标准,使软件复杂度水平着落在安全区.结合某公司的手机应用系统实例,对所设计的3种方案进行研究、对比与验证,得到了一个低复杂度、性能优异的可行方案,且使软件开发、测试和维护的生产成本得到降低,其中涉及的复杂度包括扇出复杂度、圈复杂度等.  相似文献   

3.
一种基于AOP/IOC的软件框架研究与实现   总被引:1,自引:0,他引:1       下载免费PDF全文
横切关注点分散于核心关注点之中是导致软件无法模块化的主要障碍之一。在研究IOC和AOP技术的基础上,给出了一种有效的软件框架:Champion框架,并对其实现机理进行了阐述。Champion框架的使用可有效降低模块之间的耦合度,提高软件的可维护性和扩展性。  相似文献   

4.
现有统一建模语言(UML)设施及一般软件自适应工具难以直接支持软件模糊自适应(SFSA)需求分析与设计阶段的建模,为此,提出一种基于UML用例扩展的SFSA需求分析与设计方法--Fuzzy Case。该方法结合SFSA的概念模型,应用UML扩展机制引入新的构造型和标记值,建立了Fuzzy Case的一般模型;同时定义了Fuzzy Case的语法结构,并用对象约束语言(OCL)定义了其语义描述,形成了完整的SFSA建模设施。实例验证表明,与传统方法相比,Fuzzy Case能更清晰地表达SFSA的结构,准确定义软件的内部语义,建模过程更加简单方便,能有效提高SFSA的开发效率。  相似文献   

5.
6.
Today’s ever-increasing application of high-dimensional data sets makes it necessary to find a way to fully comprehend them. One of these ways is visualizing data sets. However, visualizing more than 3-dimensional data sets in a fathomable way has always been a serious challenge for researchers in this field. There are some visualizing methods already available such as parallel coordinates, scatter plot matrix, RadViz, bubble charts, heatmaps, Sammon mapping and self organizing maps. In this paper, an axis-based method (called Nasseh method) is introduced in which familiar elements of visualization of 1-, 2- and 3-dimensional data sets are used to visualize higher dimensional data sets so that it will be easier to explore the data sets in the corresponding dimensions. Nasseh method can be used in many applications from illustrating points in high-dimensional geometry to visualizing estimated Pareto-fronts for many-objective optimization problems.  相似文献   

7.
AspectC#——在C#中应用AOP   总被引:2,自引:0,他引:2  
当前,AspectJ是用得最普遍的AOP工具,它是基于Java平台的。着重讨论了一种基于.NET平台的AOP技术,AspectC#。用户可以通过AspectC#在C#中应用AOP。目前,AspectC#只支持C#语言,但是.NET平台的多语言性使得跨语言的AOP应用成为可能。  相似文献   

8.
This article describes implementation details of a graphical editor which is intended for efficient 3D visualization of finite element meshes. The purpose of this program is to prepare the input data for the finite element method – a widely known method for numerical solutions of scientific and engineering problems described by partial differential equations. Nowadays, increasing demand on accuracy of the calculation through the boom of parallel computing involves the use of finer and more detailed finite element meshes. However, the meshes with a very large number of elements and nodes cause problems with visualization in commonly used programs that are very slow, unresponsive and for some operations often unusable. Therefore, efficient data structures and algorithms were designed and implemented to enable fast work with very large finite element meshes.  相似文献   

9.
Software variants emerge from ad-hoc copying in-the-large with adaptations to a specific context. As the number of variants increases, maintaining such software variants becomes more and more difficult and expensive. In contrast to such ad-hoc reuse, software product lines offer organized ways of reuse, taking advantage of similarities of different products. To re-gain control, software variants may be consolidated as organized software product lines. In this paper, we describe a method and supporting tools to compare software variants at the architectural level extending the reflexion method to software variants. Murphy’s reflexion method allows one to reconstruct the module view, a static architectural view describing the static components, their interfaces and dependencies and their grouping as layers and subsystems. The method consists of the specification of the module view and the mapping of implementation components onto the module view. An automatic analysis determines differences between the module view and its implementation. We extend the reflexion method from single systems to software variants. Because software variants share a very large amount of code, we can expect components of one variant to re-occur in the other variant either identically or at least similarly. We use similarity metrics to determine this type of correspondence among implementation components between two variants. Because the similarity metrics are expensive to compute, we use clone detection techniques to reduce the number of candidate pairs of implementation components for which the similarity is computed. The correspondence is then used to transfer as much as possible of the mapping for the analyzed variants to the next variant to be analyzed. Furthermore, we describe how to unify the individual product architectures into a software product line architecture.  相似文献   

10.
AOP在数据访问中间件中的应用   总被引:8,自引:0,他引:8  
在开发数据访问中间件中,分布式应用开发是难以避免的。本文运用AOP(Aspect-Offented Programming)建立一种框架执行分布式,并运用于图书馆统一检索平台中。使用AOP的思想在于通过分离关注点,降低中间件开发的难度和复杂度。而且,系统拥有更好的模块化、可扩展性和可维护性。  相似文献   

11.
C3D file format is widely used in the biomechanical field by companies and laboratories to store motion capture systems data. However, few software packages can visualize and modify the integrality of the data in the C3D file. Our objective was to develop an open-source and multi-platform framework to read, write, modify and visualize data from any motion analysis systems using standard (C3D) and proprietary file formats (used by many companies producing motion capture systems). The Biomechanical ToolKit (BTK) was developed to provide cost-effective and efficient tools for the biomechanical community to easily deal with motion analysis data. A large panel of operations is available to read, modify and process data through C++ API, bindings for high-level languages (Matlab, Octave, and Python), and standalone application (Mokka). All these tools are open-source and cross-platform and run on all major operating systems (Windows, Linux, MacOS X).  相似文献   

12.
AOP技术在物流系统权限控制中的应用   总被引:1,自引:0,他引:1  
本文结合物流系统权限模块开发的实际应用,分析了采用OOP技术处理横切关注点引发的问题,以及采用AOP的解决方案及优势。最后通过AspectJ,给出了AOP技术在物流系统权限控制中应用的一个示例。  相似文献   

13.
The presentation attempts to show how coded display attributes, especially colour, can help to make business and presentation graphics to communicate better. Essentials of the instructional functions of colour and some of the constraints are outlined. The second part covers colour in the CEPT European Videotex recommendation and how the growing acceptance of microcomputers will promote colour computers.  相似文献   

14.
In Information Visualization, adding and removing data elements can strongly impact the underlying visual space. We have developed an inherently incremental technique (incBoard) that maintains a coherent disposition of elements from a dynamic multidimensional data set on a 2D grid as the set changes. Here, we introduce a novel layout that uses pairwise similarity from grid neighbors, as defined in incBoard, to reposition elements on the visual space, free from constraints imposed by the grid. The board continues to be updated and can be displayed alongside the new space. As similar items are placed together, while dissimilar neighbors are moved apart, it supports users in the identification of clusters and subsets of related elements. Densely populated areas identified in the incSpace can be efficiently explored with the corresponding incBoard visualization, which is not susceptible to occlusion. The solution remains inherently incremental and maintains a coherent disposition of elements, even for fully renewed sets. The algorithm considers relative positions for the initial placement of elements, and raw dissimilarity to fine tune the visualization. It has low computational cost, with complexity depending only on the size of the currently viewed subset, V. Thus, a data set of size N can be sequentially displayed in O(N) time, reaching O(N 2) only if the complete set is simultaneously displayed.  相似文献   

15.
In Trusted Network Connect (TNC), a network access decision is based on the security state of an access requesting party. This mechanism is limited to closed environments such as LANs and VPNs. In this paper, we propose solutions based on authentication standards for enabling TNC in open, web-based scenarios. In particular, an architectural model for TNC is proposed that takes additional security and privacy requirements into account. Furthermore, a communication scheme is proposed that is based on standardised protocols and message formats. This approach provides assurance as to the security state of clients accessing security sensitive web-based services.  相似文献   

16.
Abstract Multi-core digital signal processors (DSPs) are widely used in wireless telecommunication, core network transcoding, industrial control, and audio/video processing technologies, among others. In comparison with general-purpose multi-processors, multi-core DSPs normally have a more complex memory hierarchy, such as on-chip core-local memory and non-cache-coherent shared memory. As a result, efficient multi-core DSP applications are very difficult to write. The current approach used to program multi-core DSPs is based on proprietary vendor software development kits (SDKs), which only provide low-level, non-portable primitives. While it is acceptable to write coarse-grained task-level parallel code with these SDKs, writing fine-grained data parallel code with SDKs is a very tedious and error-prone approach. We believe that it is desirable to possess a high-level and portable parallel programming model for multi-core DSPs. In this paper, we propose OpenMDSP, an extension of OpenMP designed for multi-core DSPs. The goal of OpenMDSP is to fill the gap between the OpenMP memory model and the memory hierarchy of multi-core DSPs. We propose three classes of directives in OpenMDSP, including 1) data placement directives that allow programmers to control the placement of global variables conveniently, 2) distributed array directives that divide a whole array into sections and promote the sections into core-local memory to improve performance, and 3) stream access directives that promote big arrays into core-local memory section by section during parallel loop processing while hiding the latency of data movement by the direct memory access (DMA) of a DSP. We implement the compiler and runtime system for OpenMDSP on PreeScale MSC8156. The benchmarking results show that seven of nine benchmarks achieve a speedup of more than a factor of 5 when using six threads.  相似文献   

17.
Visualizing digital evidence in an easy and constructive manner is a major problem because of the advanced techniques for hiding, wiping, encrypting and deleting digital data developed during the last few years. Òo tackle this problem, a system for visualizing digital data in 3-dimensional (3D) mode has been developed. XML was used as a common language to allow fine-grained management of digital data with flexibility and ease. The extensibility of the implementation makes it particularly suitable as a research and development platform in the sector of open source computer forensics tools for the future. This article examines real-life problems that benefit from using this tool in a congenial and constructive manner to validate its key underlining concept. The design decisions that have been taken in producing the system architecture, and the features it supports are elaborated upon. To determine the effectiveness of the tool, an actual case study is presented which examines the results of the tool and why it is necessary to go for an open source model as a standard. The paper concludes with performance measurements of the tool and suggests possible extensions to make the tool even smarter.  相似文献   

18.
This paper moves away from reminiscent mechanical repetition and drills, which were in vogue when teaching vocabulary before the rise of technology. With the support of technology, innovative methodologies that are more effective and enjoyable can be implemented into vocabulary teaching. In this particular context, there seems to be a lack of technology integration in vocabulary teaching because of teachers being untrained and/or not provided with the necessary technology. The aim of this study was to foster vocabulary development through the implementation of Vine vocabulary videos in English vocabulary learning. An embedded mixed methods design was employed to collect necessary data for analysis. The results of the post‐test revealed that the practice of Vine vocabulary videos was effective and improved participants' vocabulary. The content analysis of the semi‐structured interviews carried out with participants indicated that they had enjoyed the whole process and found it very motivating and effective. This study claims that adopting smartphones into a vocabulary course will enable English as a foreign language learners to expand and consolidate their vocabulary learning outside the classroom, engage them in a collaborative learning environment, practice and use the language being learnt and share their knowledge and experiences with their peers.  相似文献   

19.
李伟  郑宁 《计算机工程与设计》2004,25(11):1985-1987
分析了常见代码规则强化方法中存在的问题,结合AOP(Aspect-Oriented Programming,简称AOP)的特点,给出了一种基于AOP的代码规则强化方法,并用方面来表示代码规则,通过把代码规则织入系统代码,在编译阶段和运行阶段实现了代码规则强化。  相似文献   

20.
AOP(Aspect-Oriented Programming)技术是一种在软件开发中实现核心关注点和横切关注点分离的技术,是对面向对象技术不足处的补充。本文首先介绍AOP的相关概念,然后分析AOP的实现机制,最后实现了一个.NET平台下的AOP框架并给出应用实例。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号