A Simple, Fast Parallel Implementation of Quicksort and its Performance Evaluation on SUN E
- 格式:pdf
- 大小:291.89 KB
- 文档页数:19
“Rising” Intonation on “Falling” TonesMasayuki GibsonCornell UniversityThe nature of the interaction between sentence level intonation and lexical tone varies from language to language. This is clearly evident in how “rising” intonation (an intonational contour that is perceived as rising) interacts with the lexical tones on words near the right edge of the utterance in different languages. Adherents of the ToBI-style notation (Pierrehumbert and Beckman 1988, e.g.) analyze such utterances as bearing a H boundary tone at the right edge. While this is a reasonable analysis, it is a necessarily language-dependent one that is insufficient to capture the typological variation that is apparent upon inspection of data from multiple languages. Yi Xu’s (2005) PENTA model treats tones and intonation as separate functions that are implemented by the Phonetics in parallel. This model assumes that tone and intonation do not interact in the Phonology. Results from production and perception experiments that were conducted in several languages for this study, including Shiga Japanese, Mandarin, Cantonese, and North Kyeongsang Korean suggest that any model of speech melody must allow for both language-specific phonetic implementation and for the interaction of tone and intonation in the Phonology.Shiga Japanese: Unlike in Tokyo Japanese, finally-accented words in SJ retain the drop in pitch associated with the accent on a final light syllable, thus maintaining the contrast between finally-accented and unaccented words. The realization of the pitch drop in this dialect does not seem to require a lengthening of that final mora/syllable. Meanwhile, when pronounced with an echo question intonation, the final mora of a finally-accented word still displays a sharp rise after the drop associated with the accent. The realization of this rise is accompanied by a drastic lengthening of the last mora (doubling its length in most cases). (See Figure 1a) Mandarin: Echo questions in Mandarin (Putonghua) are characterized by a raising of the overall pitch level that causes a final lexical falling tone to be in a higher range than in a declarative utterance (but falling nonetheless). Yuan (2004) shows that in echo questions the F0 is shifted up from the start of the utterance and that the pitch range of the final syllable is increased. Results from the present production study confirm this. Yuan’s observation that the effect of the echo question intonation on the tones is tone-specific is also corroborated; the first and second tones seem simply to be shifted upwards, whereas the third tone gets pulled down just as low as a declarative third tone but then ends much higher and the beginning of the fourth tone gets shifted upwards to a greater degree than the end. Overall, we don’t see duration effects in Mandarin that are comparable to those seen in SJ, but we do see a slight lengthening of the final syllable for one speaker that could be attributed to phonetic marking of focus (see Chen 2002). (See Figure 1b)Cantonese: In Hong Kong Cantonese, the intonational rise of an echo question is realized on the final syllable. The results of the present study show that, unlike in Shiga Japanese, a final falling tone in Cantonese does not complete its fall before the rise is initiated (c.f. Wu 1990, who reports that “the rise starts after the fall” and Yip 2002, who claims that the tone starts where it would in a declarative context and ends “high”). Like in Mandarin, we see some tone-specific effects. Also like in Mandarin, the duration of the final syllable is not affected to the degree that we see in SJ. (See Figure 1c)North Kyeongsang Korean: Despite its status as a so-called “pitch accent” language, NKK behaves quite differently from Japanese when it comes to the reconciliation of a lexical HL sequence with a rising intonation. If the HL sequence falls on the last two syllables of an echo question, we still see a lower F0 on the second syllable, though it doesn’t drop as low as it does in a declarative context. This is similar to the Mandarin case. However, if the HL sequence falls on a single syllable, there is no fall; the pitch simply rises and keeps rising. (See Figure 1d) An adequate model of speech melody must minimally include a phonological component and a phonetic component. The phonological component must be able to do “repairs” like tone deletion (to handle NKK) and TBU lengthening (to handle SJ). The “rising” intonation scheme must also be sensitive to the tonal category (to handle the tone-specific phonetic implementation in Cantonese and Mandarin), rendering parallel implementation of tones and intonation impossible to maintain. Such a model would not only give us better descriptive power but would also go further than the other models mentioned above in accounting for cross-linguistic differences in perception. For example, Cantonese speakers are better able to identify the sentence type of an echo question but not as good at identifying the final lexical tone, whereas the reverse is true for Mandarin speakers. This asymmetry is likely due to the fact that, while the tone-specific implementation of intonation reinforces differences among the tones in Mandarin, it nearly neutralizes several of the tones in Cantonese.a. SJ: + “rising” intonationb. Mandarin: + “rising” intonationc. Cantonese: + “rising” intonationd. NKK (1 syll): + “rising” intonatione. NKK (2 syll): + “rising” intonationFigure 1: A schematic representation of the interaction of lexical HL tones with “rising” intonation associated with echo questions in (a) Shiga Japanese, (b) Mandarin, (c) Cantonese, (d,e) North Kyeonsang Korean.。
Package‘fastICA’November27,2023Version1.2-4Date2023-11-27Title FastICA Algorithms to Perform ICA and Projection PursuitAuthor J L Marchini,C Heaton and B D Ripley<***************>Maintainer Brian Ripley<***************>Depends R(>=4.0.0)Suggests MASSDescription Implementation of FastICA algorithm to perform IndependentComponent Analysis(ICA)and Projection Pursuit.License GPL-2|GPL-3NeedsCompilation yesRepository CRANDate/Publication2023-11-2708:34:50UTCR topics documented:fastICA (1)ica.R.def (5)ica.R.par (6)Index7 fastICA FastICA algorithmDescriptionThis is an R and C code implementation of the FastICA algorithm of Aapo Hyvarinen et al.(https: //www.cs.helsinki.fi/u/ahyvarin/)to perform Independent Component Analysis(ICA)and Projection Pursuit.1UsagefastICA(X,p,alg.typ=c("parallel","deflation"),fun=c("logcosh","exp"),alpha=1.0,method=c("R","C"),row.norm=FALSE,maxit=200,tol=1e-04,verbose=FALSE,w.init=NULL)ArgumentsX a data matrix with n rows representing observations and p columns representing variables.p number of components to be extractedalg.typ if alg.typ=="parallel"the components are extracted simultaneously(the default).if alg.typ=="deflation"the components are extracted one at atime.fun the functional form of the G function used in the approximation to neg-entropy (see‘details’).alpha constant in range[1,2]used in approximation to neg-entropy when fun== "logcosh"method if method=="R"then computations are done exclusively in R(default).The code allows the interested R user to see exactly what the algorithm does.ifmethod=="C"then C code is used to perform most of the computations,whichmakes the algorithm run faster.During compilation the C code is linked to anoptimized BLAS library if present,otherwise stand-alone BLAS routines arecompiled.row.norm a logical value indicating whether rows of the data matrix X should be standard-ized beforehand.maxit maximum number of iterations to perform.tol a positive scalar giving the tolerance at which the un-mixing matrix is considered to have converged.verbose a logical value indicating the level of output as the algorithm runs.w.init Initial un-mixing matrix of dimension c(p,p).If NULL(default) then a matrix of normal r.v.’s is used.DetailsIndependent Component Analysis(ICA)The data matrix X is considered to be a linear combination of non-Gaussian(independent)compo-nents i.e.X=SA where columns of S contain the independent components and A is a linear mixing matrix.In short ICA attempts to‘un-mix’the data by estimating an un-mixing matrix W where XW =S.Under this generative model the measured‘signals’in X will tend to be‘more Gaussian’than the source components(in S)due to the Central Limit Theorem.Thus,in order to extract the independent components/sources we search for an un-mixing matrix W that maximizes the non-gaussianity of the sources.In FastICA,non-gaussianity is measured using approximations to neg-entropy(J)which are more robust than kurtosis-based measures and fast to compute.The approximation takes the formJ(y)=[E{G(y)}−E{G(v)}]2where v is a N(0,1)r.v.log cosh(αu)and G(u)=−exp(u2/2).The following choices of G are included as options G(u)=1αAlgorithmFirst,the data are centered by subtracting the mean of each column of the data matrix X.The data matrix is then‘whitened’by projecting the data onto its principal component directionsi.e.X->XK where K is a pre-whitening matrix.The number of components can be specified bythe user.The ICA algorithm then estimates a matrix W s.t XKW=S.W is chosen to maximize the neg-entropy approximation under the constraints that W is an orthonormal matrix.This constraint en-sures that the estimated components are uncorrelated.The algorithm is based on afixed-point iteration scheme for maximizing the neg-entropy.Projection PursuitIn the absence of a generative model for the data the algorithm can be used tofind the projection pursuit directions.Projection pursuit is a technique forfinding‘interesting’directions in multi-dimensional datasets.These projections and are useful for visualizing the dataset and in density estimation and regression.Interesting directions are those which show the least Gaussian distribu-tion,which is what the FastICA algorithm does.ValueA list containing the following componentsX pre-processed data matrixK pre-whitening matrix that projects data onto thefirst p principal compo-nents.W estimated un-mixing matrix(see definition in details)A estimated mixing matrixS estimated source matrixAuthor(s)J L Marchini and C HeatonReferencesA.Hyvarinen and E.Oja(2000)Independent Component Analysis:Algorithms and Applications,Neural Networks,13(4-5):411-430See Alsoica.R.def,ica.R.parExamples#---------------------------------------------------#Example1:un-mixing two mixed independent uniforms#---------------------------------------------------S<-matrix(runif(10000),5000,2)A<-matrix(c(1,1,-1,3),2,2,byrow=TRUE)X<-S%*%Aa<-fastICA(X,2,alg.typ="parallel",fun="logcosh",alpha=1,method="C",row.norm=FALSE,maxit=200,tol=0.0001,verbose=TRUE)par(mfrow=c(1,3))plot(a$X,main="Pre-processed data")plot(a$X%*%a$K,main="PCA components")plot(a$S,main="ICA components")#--------------------------------------------#Example2:un-mixing two independent signals#--------------------------------------------S<-cbind(sin((1:1000)/20),rep((((1:200)-100)/100),5))A<-matrix(c(0.291,0.6557,-0.5439,0.5572),2,2)X<-S%*%Aa<-fastICA(X,2,alg.typ="parallel",fun="logcosh",alpha=1,method="R",row.norm=FALSE,maxit=200,tol=0.0001,verbose=TRUE)par(mfcol=c(2,3))plot(1:1000,S[,1],type="l",main="Original Signals",xlab="",ylab="")plot(1:1000,S[,2],type="l",xlab="",ylab="")plot(1:1000,X[,1],type="l",main="Mixed Signals",xlab="",ylab="")plot(1:1000,X[,2],type="l",xlab="",ylab="")plot(1:1000,a$S[,1],type="l",main="ICA source estimates",xlab="",ylab="")plot(1:1000,a$S[,2],type="l",xlab="",ylab="")#-----------------------------------------------------------#Example3:using FastICA to perform projection pursuit on a#mixture of bivariate normal distributions#-----------------------------------------------------------if(require(MASS)){x<-mvrnorm(n=1000,mu=c(0,0),Sigma=matrix(c(10,3,3,1),2,2)) x1<-mvrnorm(n=1000,mu=c(-1,2),Sigma=matrix(c(10,3,3,1),2,2)) X<-rbind(x,x1)a<-fastICA(X,2,alg.typ="deflation",fun="logcosh",alpha=1,ica.R.def5 method="R",row.norm=FALSE,maxit=200,tol=0.0001,verbose=TRUE)par(mfrow=c(1,3))plot(a$X,main="Pre-processed data")plot(a$X%*%a$K,main="PCA components")plot(a$S,main="ICA components")}ica.R.def R code for FastICA using a deflation schemeDescriptionR code for FastICA using a deflation scheme in which the components are estimated one by one.This function is called by the fastICA function.Usageica.R.def(X,p,tol,fun,alpha,maxit,verbose,w.init)ArgumentsX data matrixp number of components to be extractedtol a positive scalar giving the tolerance at which the un-mixing matrix is consideredto have converged.fun the functional form of the G function used in the approximation to negentropy.alpha constant in range[1,2]used in approximation to negentropy when fun=="logcosh"maxit maximum number of iterations to performverbose a logical value indicating the level of output as the algorithm runs.w.init Initial value of un-mixing matrix.DetailsSee the help on fastICA for details.ValueThe estimated un-mixing matrix W.Author(s)J L Marchini and C HeatonSee AlsofastICA,ica.R.par6ica.R.par ica.R.par R code for FastICA using a parallel schemeDescriptionR code for FastICA using a parallel scheme in which the components are estimated simultaneously.This function is called by the fastICA function.Usageica.R.par(X,p,tol,fun,alpha,maxit,verbose,w.init)ArgumentsX data matrix.p number of components to be extracted.tol a positive scalar giving the tolerance at which the un-mixing matrix is consideredto have converged.fun the functional form of the G function used in the approximation to negentropy.alpha constant in range[1,2]used in approximation to negentropy when fun=="logcosh".maxit maximum number of iterations to perform.verbose a logical value indicating the level of output as the algorithm runs.w.init Initial value of un-mixing matrix.DetailsSee the help on fastICA for details.ValueThe estimated un-mixing matrix W.Author(s)J L Marchini and C HeatonSee AlsofastICA,ica.R.defIndex∗multivariatefastICA,1∗utilitiesica.R.def,5ica.R.par,6fastICA,1,5,6ica.R.def,3,5,6ica.R.par,3,5,67。
Journal of International Education and Development2022, VOL. 6, NO. 10, 96-99DOI: 10.47297/wspiedWSP2516-250017.20220610Implementation Plan of International Trade Classroom Teaching Reform in the New Media EnvironmentAiqin WangTaishan University, Taian, ShandongABSTRACTNew media technology has become a necessary means of classroomteaching in colleges and universities. In the process of educatingstudents, strengthening the use of new media resources and promotingclassroom teaching to keep pace with the times will help to achieve themutual penetration of new media resources and various disciplines, sothat they can go together and form a synergistic effect. This paper putsforward the implementation plan of the classroom teaching reform ofinternational trade under the new media environment from threeaspects: optimizing the classroom teaching content, building thecurriculum platform, and reforming the classroom teaching methods,which is conducive to improving the enthusiasm of students and thequality of classroom teaching.KEYWORDSNew media; International trade; Teaching reform1 Optimizing Classroom Teaching Content(1) Guiding principlesIn teaching, the guiding ideology of "teaching is integrated and production, teaching and research are conducted in parallel" not only enables students to master the basic theory of international trade, but also enables students to carry out the training of "production, learning and research are conducted in parallel" by linking knowledge points together, so as to improve their practical operation ability. In the course of lectures, the basic theoretical knowledge of international trade is presented to students through systematic and perfect chapter design, so that students can learn the basic knowledge of international trade step by step from simple to deep, from easy to difficult, and form a relatively complete basic framework system of international trade.The curriculum content design is carried out around one key point and three key links. One key point is to find an effective way to integrate ideological and political elements, and to cultivate students' patriotism, integrity awareness and contract spirit by explaining the background, national policies, and professional ethics of foreign trade industry contained in the knowledge points. The three key links are: first, pay close attention to and accurately find hot and difficult issues in the field of international trade, guide students to find problems, and cultivate the ability to actively think about problems; Second, interdisciplinary, multi perspective, scientific analysis of the dynamic international trade system, through case discussions, thematic design and other ways to improve students' ability to use theory to analyze international trade issues; Third, through heuristic teaching, inquiry based teaching, problem oriented teaching, in combination with professional skills competition, special simulation practice, off campus practice and other ways, students' innovationJournal of International Education and Development97 awareness is cultivated and their ability to solve problems is improved.(2) Teaching design of international trade theoryThe course of international trade mainly includes two parts: international trade theory and international trade policy. The theoretical knowledge of international trade is abstract, obscure and boring. How to explain the part of international trade theory well is the key and difficult point in this course. To solve this problem, we need to build a systematic curriculum teaching system so that students can flexibly use theoretical knowledge to explain new international trade phenomena. The development system of international trade theory is very perfect, from classical international trade theory to neo classical international trade theory, and then to contemporary new international trade theory; From the theory of trade protection to the theory of free trade, these theories are not independent of each other, but are closely related. Only by building a systematic and perfect theoretical system of international trade can students truly understand the theoretical connotation.In the teaching process, follow the teaching idea of "leading out the theory - introducing the historical background - explaining the theoretical content - students commenting on the theory". When introducing the new trade theory, first of all, review the previous trade theory related to it to introduce the new theory to be explained; Secondly, introduce the historical background of the theory; Then, the main content of the theory is introduced in detail, and the explanation of the theoretical content is interspersed with cases to enhance the ability of the theory to solve practical problems; Finally, we will comment on the historical progress and limitations of the theory, actively guide students to participate widely, let students comment on the theory according to their own understanding, and teachers will summarize[1].(3) Integration of ideological and political elementsUnder the new media environment, the smooth implementation of classroom teaching reform is inseparable from the cultivation of students' moral quality. Actively integrate ideological and political elements into the teaching, always put the cultivation of students' ideological and moral quality in the first place, integrate patriotism into the teaching. In the process of teaching the professional knowledge of international trade, professional quality and patriotism are integrated into it, which is suitable for the needs of the educational reform of colleges and universities, students can not only learn the subject, but also improve their comprehensive quality. In classroom teaching, we always integrate excellent traditional Chinese culture and advanced socialist culture into the classroom at the right time, and guide students to make use of their knowledge to contribute to the cause of socialism with Chinese characteristics.2 Building a Course Platform(1) Building a perfect online teaching systemThe teaching reform of courses cannot be separated from the support of a perfect online teaching system. The course of international trade has been jointly built and shared by the Shandong Higher Education Curriculum Alliance, and has reached the Online Review Standards for Platform Courses. At present, it has been run simultaneously on the Smart Tree platform and offline courses. There are 764 minute learning videos on the Smart Tree platform, which cover all the contents of the ten chapters of the international trade course. Each learning video is designed with pop-up questions. Each chapter has 2-5 open chapter discussion questions, 10 chapter testAiqin Wang 98questions, and 150 final test questions.(2) Use self-compiled textbooksThe textbook has distinctive features, closely follows the hot spots of the industry. The teaching materials are rich in supporting resources and guidance cases and exercises. Instead of simply teaching students to learn theoretical knowledge, it focus on the basic operating skills and practical application abilities of international trade, so that students can have the basic skills to engage in international trade and adapt to the requirements of their posts as soon as possible after work. It pays attention to the combination with China's foreign trade practice, and each important knowledge point is accompanied by the latest international trade related cases in recent years. By integrating the latest cases into the teaching of knowledge points in the textbook, students can use the theoretical knowledge of the textbook to solve specific problems in practical business, which not only improves students' interest, but also enhances students' sense of achievement and cultivates their comprehensive quality[2].(3) Organic combination of online and offlineUnder the new media environment, advanced technical means have greatly promoted the smooth progress of classroom teaching reform. The online teaching tool Learning Connect is mainly used to achieve the organic combination of online and offline. In the classroom teaching process, we use Learning Connect to upload courseware, teaching plan and other materials to the Learning Connect platform, and upload the pre class preview content, homework after class, group discussion and other content to the Learning Connect in time. In the classroom, we use the signing in, random questions, classroom discussion, homework and other functions of the Learning Connect platform to achieve an organic combination of online and offline, and improve students' interest in learning.3 Reforming Classroom Teaching Methods(1) Adopt online and offline hybrid teaching methodUnder the new media environment, both online and offline teaching methods are indispensable, online and offline hybrid teaching methods must be adopted. In the teaching of international trade, the online wisdom tree teaching platform is mainly used for self-study, preview and review. In class, the relevant functions of the learning through teaching platform help to explain the basic content of the classroom, so as to improve students' participation in the classroom.(2) Use case teaching methodBased on the actual needs of international trade posts, adhere to the principle of close integration of theory and practice, introduce the latest cases related to international trade theory and policy in classroom teaching, reform and design the teaching content. Following the teaching mode of "case derivation - theoretical knowledge explanation - practical case analysis - knowledge point review", by inserting the latest international trade cases into the teaching of knowledge points, students have not only deepened their grasp of theoretical knowledge, but also improved their ability to solve practical problems, and fully solved the problem that the classroom teaching is dominated by single knowledge transfer and the communication between teachers and students is seriously insufficient, to truly improve students' sense of participation and initiative and return the99 Journal of International Education and Developmentclassroom to students[3].(3) Adopt methods such as "heuristic teaching, research-based learning and ability training"We should pay attention to the use of "heuristic teaching, research learning, ability training" and other methods to cultivate students' innovative consciousness, thinking mode and knowledge application ability; Change from "teaching centered" to "learning centered". In the explanation of knowledge points closely related to the practical problems of international trade, such as tariff policy, trade protection policy, non-tariff measures and other knowledge points, the teaching method of "arranging problems in advance - students looking for information before class - class group discussion - teachers' comments" is adopted to give full play to students' subjective initiative and ability to participate in the class.FundingFund projects: The special project of Tai'an City's teaching science planning "Research on the practical path of integrating curriculum ideology and politics into professional teaching under the new media environment (TJK202106ZX046)".About the AuthorAiqin Wang (1982-02), Female, Taishan University, Associate Professor, Research Field: Human Resource Management, International Trade.References[1] Li Ling, Xu Yuqin. Analysis of the Teaching Reform Path of Ideological and Political Courses in Colleges andUniversities under the New Media Environment, New West [J], 2019, (35).[2] Li Fen. Teaching Reform of Ideological and Political Theory Course in Colleges and Universities under the New MediaEnvironment, Western Quality Education [J], 2018, (24).[3] Li Mingwen, Yu Shuya. Research on the Reform of College Teaching Methods in the New Media Environment,Western Radio and Television [J], 2018, (04).。
密码学报 ISSN 2095-7025 CN 10-1195/TNJournal of Cryptologic Research, 2020, 7(6): 799-811 ©《密码学报》编辑部版权所有.E-mail: ***************.cn Tel/Fax: +86-10-82789618SM4算法快速软件实现**基金项目:北京市自然科学基金(4202037); CCF-腾讯科研基金(CCF-Tencent RAGR20200123);国家重点研发计划 (2017YFB1400700);科学研究与研究生培养共建项目(JD 100060630);国家级大学生创新创业训练计划(201910006159, 201910006107)Foundation: Natural Science Foundation of Beijing Municipality (4202037); CCF-Tencent Open Fund (CCF-Tencent RAGR 20200123); National Key Research and Development Program of China (2017YFB1400700); Co-Funding Project of Beijing Municipal Education Commission for Scientific Research and Graduates Training (JD 100060630); National Students 1 Innovation and Entrepreneurship Training Program (201910006159, 201910006107)收稿日期:2019-11-13 定稿日期:2020-01-13张觌气I 华气张习肚王肌刘建伟31. 北京航空航天大学软件开发环境国家重点实验室,北京1001912. 密码科学技术国家重点实验室,北京1008783. 北京航空航天大学空天网络安全工业与信息化部重点实验室,北京1001914. 北京卫星信息工程研究所,北京100086通信作者:郭华,E-mail: *************.cn;张习勇,E-mail: ************************摘要:SM4是对称分组密码国家标准•加解密计算效率是衡量算法实现性能的重要指标,而目前关于SM4软件实现方法方面的研究不多.利用比特切片技术,结合支持单指令多数据(SIMD)的AVX2指令 集,本文提出了一种SM4算法的快速软件优化实现方法,使用256位的YMM 奇存器实现了 SM4算法的256分组数据并行加解密.首先基于已有的选择函数构造了新的选择函数,之后改进了搜索算法,基于新的选择函数和改进的搜索算法化简了 S 盒的逻辑表达式,将实现逻辑表达式所需的逻辑门电路数量由 3000(最简与或式)降至497.在Intel Core I7-7700HQ (Kabylake) @2.80 GHz 处理器上,实现速度达到了 2580 Mbps,同公开文献中的最好结果 1795 Mbps (Intel Core i7-5500U (Broadwell-U) @2.40 GHz)相比,实现效率提高了 43%.基于比特切片技术的软件实现优化方法无需内存或高速缓存查表,因此该方法可抵抗缓存-计时侧信道攻击,从而安全性得到了提升.本文提出的优化方法具有可扩展性,不仅适用于 在X86平台上借助拓展指令集AVX2实现,还可利用RISC 指令集在资源受限,安全性要求高的ARM等嵌入式平台上实现.此外,新的选择函数和搜索算法具有通用性,可用于其它一般逻辑函数的化简.关键词:SM4算法;软件优化实现;比特切片;SIMD 技术中图分类号:TP309.7 文献标识码:A DOI: 10.13868力.cnki.jcr.000407中文引用格式:张笑从,郭华,张习勇,王闯,刘建伟.SM4算法快速软件实现[J].密码学报,2020, 7(6): 799-811.[D0I : 10.13868/ki.jcr.000407]英文引用格式:ZHANG X C, GUO H, ZHANG X Y, WANG C, LIU J W. Fast software implementation ofSM4[J]. Journal of Cryptologic Research, 2020, 7(6): 799-811. [DOI: 10.13868/ki.jcr.000407]Fast Software Implementation of SM4ZHANG Xiao-Cong b3, GUO Hua b2, ZHANG Xi-Yong 4, WANG Chuang 1, LIU Jian-Wei 31. State Key Laboratory of Software Development Environment, Beihang University, Beijing 100191, China2. State Key Laboratory of Cryptology, Beijing 100878, China800Journal of Cryptologic Research密码学报Vol.7,No.6,Dec.20203. Key Laboratory of Aerospace Network Security(Ministry of Industry and Information Technology), Beihang University,Beijing100191,China4. Beijing Institute of Satellite Information Engineering,Beijing100086,ChinaCorresponding author:GUO Hua,E-mail:*************.cn;ZHANG Xi-Yong,E-mail:xiyongzhang@Abstract:The SM4algoiithm is China's national standard of symmetric block cipher,and its efficiency is one of the most important features.So far,insufficient work has been done on fast software implementation of SM4algorithm.Exploiting bit-slicing technique and SIMD(single instruction multiple data)instruction set AVX2,this paper presents a fast implementation of SM4algorithm which can process256blocks in parallel via256bits YMM registers.Firstly,a new selection function is constructed based on existing ones.Then,the logic circuit generating algorithm corresponding to the selection function is improved.Furthermore,the number of gates of the S box is reduced from3000to ing an Intel Core i7-7700HQ(Kabylake)@2.80GHz processor,the software performance is2580 Mbps,43%ahead of SM4's benchmark on software implementation which is1795Mbps(Intel Core i7-5500U(Broadwell-U)@2.40GHz).Bit-sliced implementation does not require to store a table in memory or in cache,hence it is immune to side channel attacks such as cache attack and timing attack. The improved method presented in this paper can be implemented on various computing platforms, which means that it is suitable to X86architecture with extended instruction set AVX2,and is also suitable to embedded systems with RISC instructions and limited resource.Note that the improved selection function and the improved logic circuit generating algorithm are a generic approach,which can be used to the reduction of general logical functions.Key words:SM4;software implementation:bit slicing;SIMD1引言SM4分组密码算法⑴是我国自主设计的对称分组密码,为众多信息系统提供安全、完整的数据加密方案.SM4算法的高效软件实现为我国应用在安全产品(如IPSec、VPN、SSL、TLS等)上的密码算法由国际标准替换为国家标准提供了强有力的支撑,为SM4算法广泛用于政府办公、公安、银行、税务、电力等自主可控要求高的信息系统提供了可靠的保障.目前关于SM4算法的软件优化实现方面的相关工作不多,多使用查表的方法何,但由于代替表规模相对较大,CPU在做查表操作时,表中数据在内存和cache 之间频繁对换导致查表延时较大,且不利于高效并行加/解密多组消息.此外,查表法无法抵抗缓存-计时侧信道攻击,因此在一定程度上制约了SM4的软件实现性能和安全性.1996年Intel推出单指令多数据的SSE(Streaming SIMD Extensions)指令集后,Biham同于1997年提出一种新的对称分组密码快速软件实现方法,核心思想是将处理器视为以1比特为单位的单指令多数据处理器,随后被Matthew Kwan称为比特切片(bit slicing)⑷.比特切片方法在64位平台上实现了64组DES消息的并行加解密,将逻辑门个数从理论上需要的132个每比特输出优化到10()个每比特输岀.之后研究者们对门函数个数进一步进行了优化,使得标准逻辑门(与、或、非、异或)和非标准逻辑门均达到了平均50+个每比特输出.2011年Roman Rusakov同又将门函数的个数降至平均44个逻辑门每比特输岀.比特切片方法可大大提高实现效率,也可用于搜索密钥,对RISC和CISC的指令集平台均适用,且具有更好的安全性.为了提高软件实现速度,国内外许多学者尝试将采用SIMD(Single Instruction Multiple Dada,单指令多数据)技术用于密码算法的软件实现.A.Adomnicai和T.Peyrin何给出改进的比特切片方法“Fixslicing”,在ARM和RISC-V平台实现了AES.2012年Intel推出高级向量指令集(Advanced Vector Extensions,AVX)后,众多学者开始研究如何利用AVX指令集加速对称分组密码算法的实现速度,尤其是轻量级密码算法的实现速度.Seiichi Matsuda和Shiho Moriai卩】利用AVX指令集加速切片实现,给张笑从等:SM4算法快速软件实现801出了轻量级密码算法面向云端的实现,将SSE指令与比特切片方法结合并应用到PRESENT/Piccolo,使两者的实现吞吐量分别达到4.3cycle/byte和4.57cycle/byte.2013年,Neves和Aumasson同将AVX2指令应用到SHA-3候选算法BLAKE上并提高了其实现性能.最近,郎欢等何利用X86架构下的SIMD 指令给出了高效的SM4实现,他们釆用C语言调用AVX2指令接口方式实现,在并行查表的基础上,给出了两种不同的方法.2014年Kostas Papapagiannopoulos等人口°】将比特切片方法修改为nibble切片方法,并减少了访问内存,在AVR处理器上给出了高效实现.此外,研究者们将比特切片方法和其它方法结合,对SM4算法进行软件实现,也取得了较好的效果. SM4算法公布不久,Fen Liu等【切破解了SM4算法S盒的结构,公布了S盒的代数表达式及具体参数值.之后,Hao Liang等问基于已破解的SM4中S盒结构,提出了基于复合域的SM4实现方法,将S 盒的有限域求逆运算变换到复合域中实现,并在FPGA上进行验证.Jingbin Zhang等问提出了SM4在复合域中的软件实现,使用X86架构普通指令实现,速率达到20Mbps.最近,A.Eldosouky和W. Saad")针对物联网应用的效率、安全需求改进了轻量级密码算法LED的比特切片方法,并在嵌入式处理器ARM Cortex-A53进行了实现验证.O.Hajihassani等1151利用比特切片方法进一步提高了高级加密算法AES的加解密吞吐率.总的来说,在国密标准SM4算法的软件优化实现方法取得了一些进展,但和其他对称加密算法如AES相比,SM4的软件优化实现仍需进一步研究.本文利用比特切片方法,结合支持单指令多数据(SIMD)的AVX2指令集,提出了一种SM4算法的快速软件优化实现方法,使用256位的YMM寄存器实现了SM4算法的256分组数据并行加解密.该方法首先对待加密的明文消息通过SIMD版本的数据编排算法进行预处理;之后提出了一种改进的化简逻辑表达式的新方法,将实现逻辑表达式所需的逻辑门电路数量由3000降至497;最后使用反编排算法得到密文.在Intel Core i7-7700HQ(Kabylake)@2.80GHz处理器上,结合x86平台拓展指令集AVX2和上述方法对SM4算法进行软件实现,实现速度达到了2580Mbps.相比于传统的查表实现(Intel Core i7-5500U(Broadwell-U)@2.40GHz)、未优化的比特切片实现(Intel Core i7-5500U(Broadwell-U)@2.40 GHz)、SM4软件优化实现公开文献的最佳结果[9](Intel Core i7-550()U(Broadwell-U)@2.40GHz),新方法的实现效率分别提升了 1.8倍、2.6倍和43%.综上所述,本文主要贡献如下:(1)提出了一种通用的对称分组密码算法的软件优化实现方法,该方法通用于所有对称加密算法的快速软件实现.(2)提出的基于比特切片的软件优化实现方法无需内存或高速缓存查表,因此可抵抗缓存-计时侧信道攻击"1,从而安全性得到了提升.(3)提出的优化方法具有较强的通用性.该方法可用于所有对称加密算法的软件优化实现,并适用于不同的软件架构:在CISC架构平台如X86适合借助SSE、AVX2、AVX512等拓展指令集实现,在RISC架构(ARM,RISC-V)的平台可使用普通指令集实现.(4)新的选择函数和搜索算法具有通用性,可用于一般逻辑函数的化简.本文其余内容组织如下:第2节介绍SM4算法及AVX2指令;第3节介绍新的选择函数及基于选择函数的改进的搜索算法;第4节介绍SM4的基于比特切片和AVX指令的软件优化实现方法;第5节介绍实验结果;第6节总结全文.2预备知识2.1SM4简介SM4算法釆用非平衡Feistel结构"1,分组长度和密钥长度各为128比特,解密算法与加密算法结构相同,区别在于轮密钥使用顺序相反.下面首先介绍SM4的轮函数.设明文输入为(Xo,X“X2,X3)6(Z护)4,密文输出为(Yo,m,⑹€(Z跻丫,轮密钥为rk:6Zf2, 1=0,1,••-,31.SM4加密算法的轮函数F如图1所示.轮函数F每次迭代的输入为(Xi,X,+l,X;+2,X<+3),输出为(X,+l,X,+2,X;+3,尢+4),尢+4的计算方法如下:802Journal of Cryptologic Research 密码学报 Vol.7, No.6, Dec. 2020X :+4 = F(Xi, Xi+i, Xi+2, X :+3)= X : + T(Xi+i + Xi+2 + X+3 + rki)其中,rk.为当前迭代的轮密钥,T 为一个Z/2 t Zf 的可逆变换.T 为一个Zf t Z 舁的可逆变换,由非线性变换T 和线性变换L 复合而成,即T(・)= L(r(-)).非线性变换t 由4个并行的S 盒构成.设输入为A = (ao,ai,a2,a3)€ (Z®)4,输出为B = (feo,&i,&2, &3)€ (Z 寻)4,贝!I :(6(), bi, &3)= r(A) = (Sbox(ao), Sbox(ai), Sbox(a2), Sbox@3))对于每个S 盒的8位输入,前4位作为行,后4位作为列,输岀即为查找表中对应行列所对应的值.S 盒如图2所示.D C B A 95926857E 13F 18O 48O 96A A 389A E 65D B 84C 6C F F D 8851E B A 4692O A 3497C 1B 455B C 3B 6F F 56141C 3C O 5E BF 8C 8852C 68561E 6C 89D 56O 1O 95D D F 85724E 7E 7O A F F O 61B C D 263A 9B B 7E O B 2129EC 24F 143E C 3A 741O 3644F 9B 26739F 9 49EB 45D 5E 23F 92F D 7B E 6A 3O 385C 3D O 31D 591A 388F 24A A C O 1267 73A 5A B 2255O F F D E OB C 79B 8A.5B 5627B 72D 4887A 178A AE C B 7D 3O 9E 1D D 231C 8B 774 1EF 83483746D D D 6QE B E O 765D C 36F D C 9D C A 19 313F O B 2E B 5C AC 29C F 7 69 498D B A O 3E 64 9C 2E 724E 528A CF 7F A F B 55D A 24984E 9A O C 71E 6A D 27F 17DE 951A 8O 485E 3A 397 O 7237B 4OF E 6B B 19O964B O 62O B A F D 1C 6F 6B C 478E 4A O D 5D A 9 8D 29E 461D E E 1D 8O 814 cF C 2 2 29 3 o 7 o F 33A c o 1 F6 5 D F 5图2 SM4代替表Figure 2 Substitution table in SM4 algorithm图1 SM4轮函数Figure 1 Round function in SM4 algorithm L 是线性变换,非线性变换丁的输出是线性变换L 的输入.设输入为B t Z 沪,输出为C t Z 沪,则C = L(B) = B + (£«2) + (£ « 10) + (£ « 18) + (£ « 24)其中,《代表循环左移,如E «2代表循环左移2位.2.2 SIMD 技术及AVX2指令集SIMD (single instruction multiple data)技术可实现同一操作并行处理多组数据.目前支持SIMD技术的处理器厂商主要有Intel. AMD 、ARM 等.目前大多数PC 及服务器采用的是Intel 处理器,而Intel 处理器中的SSE/AVX 指令集采用的正是SIMD 技术.AVX (Advanced Vector Extensions)指令 集1181是256-bit 宽向量指令集,指令操作对象称为YMM 的256-bit SIMD 寄存器.该寄存器内容分为2个128-bit lane. AVX 指令操作对象为lanes,该指令不支持跨越lanes 的操作.AVX2指令集是AVX 指令集的扩展和改进,也称为Haswell New Instructions,支持跨越lanes 的操作.AVX2 支持 8 道 32-bit 整数异或(vpxor)、移位(vpslld),置换(vpermd)、查表(vpgatherdd)等. 2013年Inter 在22 nm Haswell 微架构处理器上正式推出AVX2指令集.表1给出了部分AVX2指令,这些指令可用于对称分组密码的切片实现.3构造新的选择函数及搜索算法“选择函数” 119>是Mattew 为比特切片方法中简化实现S 盒逻辑门电路数量而提出的一种逻辑函数 表达形式.选择函数的思想为二分法,每次分得两个子函数,直至最终分解到的子函数可以直接实现.经研究发现,对于上述特定问题选择函数形式比其他常用的标准形式优越许多.如上所述,对于SM4算法 的S 盒,使用最简与或形式、最简或与形式、最简与或非形式等需要逻辑门数约为3000,而使用己知的3张笑从等:SM4算法快速软件实现803表1相关AVX2指令总结Table1Summary of relevant AVX2instructionsAVX2指令C/C++接口功能描述vpshufhw_mm256_shufflehi_ep订64道64位数据重排vpshuflw_mm256_shufflelo_ep订64道64比特数据重排vpshufd_mm256_shu田e_epi328道32比特数据重排vpermq_mm256_permute4x64_epi644道64比特数据重排vpslld_mm256_slli_epi328道32比特逻辑左移vpsrld_mm256_srli_epi328道32比特逻辑右移vpxor_mm256_xor_si25625&比特逻辑异或vpor_mm256_or_si256256-比特逻辑或vpgatherdd_mm256_load_si256/_mm256_store_si2568道32比特查表vmovdqa_mm256_load_si256/_nim256_store__si256加载/存储256比特数据(要求内存对齐) vmovdqu_mm256_loadu_si256/_mm256_storeu_si256加载/存储256比特数据(不要求内存对齐)个选择函数形式时,可将逻辑门数限制在:N sm4=12+8x(2'+22+---+28-2)=1032.使用本文提出的新的选择函数及改进的搜索算法,可进一步将逻辑门数减至497门.一般来说,使用的选择函数越多,搜索越充分,越能减少逻辑门数量.本节首先基于已有的选择函数构造新的选择函数、之后基于新的选择函数给出改进的搜索算法,最后 介绍如何使用新的选择函数及改进的搜索算法化简S盒的逻辑表达式.3.1选择函数简介为化简比特切片方法中实现S盒所用的逻辑门电路数量,Mattew提出了化简逻辑门电路的算法及“选择函数”的概念.使用选择函数,DES中实现S盒的逻辑门电路数量从平均70门每比特输出被约简到平均45门每比特输岀.设凡为8比特逻辑函数,即F o(abcdefgh),从输入abcdefgh中任选一个比特,记为sei,给岀选择函数基本形式:F o=(Fi and sei)or(F2and not sei)不妨设sei为d,规定:Fi=Fi(abcefgh),F2=F2(abcefgh)由于Fi与F2均唯一存在,从而8比特逻辑函数被分解成7比特逻辑函数,这一过程称为利用“选择函数”的一次选择.Mattew给出了三种“选择函数”表达式:F。
P C W e i g h i n g T e r m i n a lA Happy Combination:The «Personal Weighing Computer»Weighing PC IND890Ergonomic Weighing Increased EfficiencyGreatest Possible FlexibilityIntuitive Operation2M ETTLER T OLEDO IND890 PC Weighing TerminalThe IND890 is designed to be ergonomic and extremely user-friendly. It offers the following advantages:• Uncomplicated, fast operation: – Touchscreen– Self-explanatory and visually appealing icons – Optimized, simple operator guidance – Only relevant information is displayed • Flexible use:– User-dependent, intuitive software structure– Customer-specific adaptations through free programmability – Freely configurable softkeys– Country and language-specific screen layouts • Perfect readability:– Especially large display option for weight values– Simultaneous display of 4 balances plus sum scale possible – Different status messages can be viewed concurrentlyThe answer’s easy: “touch it!” With the standard touchscreen, the operation of the IND890 is simple and reliable even in the harshest environments. The application terminal also sets new standards in highly complex weigh-ing processes. It provides the perfect connection between PC and scale with powerful and reliable industrial quality – the elegant industrial weigh-ing solution for all sectors.Weighing PC with «Mouse-free» Zone:Clear – Efficient – UniversalI n n o v a t i v e T e c h n o l o g yOne for All!The IND890 can be used everywhere. In modern in-dustrial systems, instruments are designed in such a way that they optimally fulfill their intended purpose. If processes change, weighing equipment must also be adapted. The IND890 offers the necessary flexibility in weighing station arrangement in just one version. Combined with a range of stands and fastening ele -ments, the IND890 can be mounted on a table or on the wall, can stand freely on the floor or can be in -stalled in a switch cabinet./IND890/PC-based-Terminals3M ETTLER T OLEDO IND890 PC Weighing TerminalSharper, More Attractive, Better!The large displays using widescreen technology with 10" or 15" screen diagonals and a resolution of 1024 x 600 up to 1280 x 800 pixels ensure better and easier readability from virtually any viewing angle.100 % Hygiene in Harsh ConditionsThe IND890 stainless steel terminal with its design which is free of dirty edges was developed for use in even the harshest of industrial environments. With the all-round IP66 and IP69k protection, it can be cleaned conveniently and in a time-saving manneru sing a high-pressure cleaner. The cleanability is also supported by:• E asy to disconnect cable connections: quick and easy separation of connections • A voidance of dirty edges: the surfaces and screw connections permit virtually no contamination • T he stainless steel surface has a roughness of Ra < 0.8 µm • P ower supply unit integrated in housing • R esistant to most cleaning agents and disinfectantsA New World of Weighing:• Different user profiles• Up to 4 balances can be calibrated – plus sum scale • V ariable adaptability through settings for display, region (time zone), user, language, softkeys • W ide range of configuration options (e.g. interfaces)• N umerous weighing and standard functions: – DeltaTrac ® – Tare deduction – Setpoints – Identcodes– dynamic weighing (animal weighing) • V ersatile options for evaluating the saved data (alibi, tare, messages, target values, interfaces)• M aintenance functions with diagnosis routines • S imple software updates4M ETTLER T OLEDO IND890 PC Weighing TerminalThe IND890-15 (the large version of the IND890) consists of a slimline flat screen and a separate ELO box 1. Both components are connected with as ingle cable. This ensures extremely flexible and ergonomic workplace layout. Furthermore, the convenient IND890-10 compact version offers an a ll-in- o ne solution: small, compact and supplies real-time data thanks to Windows CE.A Completely New Weighing PC The ELO box 1 contains the entire weighing and PC technology: the PC and the weighing t echnology thus form a single unit, which, with its rapid internal communica -tion, performs impressively even in challenging applications.The IND890-HMI (Human Machine Interface) can generally be smoothly adapted to a wide variety of condi -tions. This ensures individual work -place arrangement as well as c onvenient operation and reliable reading: quick and easy!The Right Version for Every ApplicationWhether as a real-time-capable compact terminal with Windows CE, or as a high-performance application with a large display – the IND890 product family has different versions with different configuration levels:• I ND890-10: Compact versionwith 10" touchscreen display and Windows CE • I ND890-15-HMI: Human MachineInterface with 15" touchscreendisplay and additional function keys • I ND890 ELO box: Electronics unitfor connection with the 15" HMIFlexible and Ergonomic – Quick and Easy!I n n o v a t i v e T e c h n o l o g yIND890-15-HMI IND890-ELO-Box IND890-10 Compact version1ELO box: The electronics box, or ELO box for short, contains the entire PC hardware including interfaces.5M ETTLER T OLEDO IND890 PC Weighing TerminalDetermining the Minimum Weight – MinWeigh ®The advantageous MinWeigh ® tech-nology ensures reliability. Because the accuracy of a measuring device is quantified by the measurement uncertainty. Every weighing system has a minimum weight at which the measurement uncertainty does not exceed the stipulated weighing tolerance. With the MinWeigh ® technology, the minimum weight is determined and certified, in order to ensure that the necessary weighing tolerances are complied with. If the weight falls below the minimum weight, this can be indicated via an icon or a weight value which changes color./minweighKey information at a glanceDepending on the configuration, all weighing data and weight values from up to 4 balances plus the sum scale are displayed simultaneously in the large, clear, certified weight value window. Here, the weightd ata can be displayed in parallel with other application data. This mean all information about all data is available at a glance. The bal -ances can be quickly activated and switched via the softkeys and smartkeys. Values are input via the country-specific touchscreen key-board.Operator Guidance • I ntuitive work with the IND890: working with the IND890 is very easy thanks to the self-explanatory icons, which are also supported by text instructions • S ettings can be made quickly and effectively: no matter whether you have to adapt data from the connected balances or the inter-faces used. Everything can be found in the respective submenu with a few touches of the screen • E very user is shown only the e lements required for the task in hand • D eltaTrac ® uses the bar color to indicate quickly and easily whether or not the target weight has yet been reached, or exceeded. This simplifies and accelerates processes./IND8906M ETTLER T OLEDO IND890 PC Weighing TerminalTouch it …… direct input:Touchscreens in every IND890 as standardNaturally intuitive …… credible, simple and new:• U nique software design – self-explanatory icons combined with an attractive, logical software structureC o n v i n c i n g A r g u m e n t sImpressively … …clear:• O ptimized navigation and input for operation via touchscreen • M enu path display for improved navigationHealthy outlook …… clear and unmistakable:• A dvantageous display options • P rogressive designwith ELO boxPin-sharp ……outstanding display even at an unfavorable viewing angleDisplays with 1A resolution 1024 x600 with IND890-101280 x 800 with IND890-157M ETTLER T OLEDO IND890 PC Weighing TerminalHygienic … … easy to clean:• P rotection rating IP69k: Cleaning with high-pressure cleaner • S urface roughness of RA < 0.8 µm • A voidance of dirty edges thanks to easy-to-clean designWhatever you want …… Individually adaptable thanks to the free programmability of the IND890.How much can it do?Numerous applications possible:• U p to 4 balances at the same time • C ertifiable • S um scale • A nalog or digitalBest connections …… easy connection and disconnectionof cables thanks to simple plug connec-tions – IP protection remains.Top condition … … top performance:Ideal performance combination of processor, RAM and mass storage.Any location … … is suitable for use:VESA 2 Mount 100 x 100 for using standard mounting systems.Universal …… with VGA interface as standard:• Connection of a standard PC to the HMI box• Connection of a standard monitor to the ELO box 11ELO box: Electronics box2VESA: Video Electronics Standards Association8M ETTLER T OLEDO IND890 PC Weighing TerminalInSite™ – the Global, PC-based Configuration ToolConfiguring the IND890 could not be simpler: e ither connected ino nline mode or for preparation as off-line configuration. This hasproven to be particularly time-saving if the configuration also has to be transfered to further IND890 ter-minals. The functions for the com-position and archiving as well as the saving and retrieval of docu-ments are also particularly useful. /insiteThe IND890 weighing software has been specially developed for use on a touchscreen. With its icons, it offers a completely new type of weight data recording, not previously available in weighing terminals.Innovative – Simple – Intuitive:Modern Weight Data RecordingS o f t w a r e a n d T o o l sReal-time Weight Values for Time-critical Control Processes The IND890 can autonomously control weight-dependent processes. A connected dosing system also shuts down correctly if the operating system is executing a different task at this precise moment. This is particularly advantageous in fast or automated processes, where re -liability is the top priority. In some cases, this function may mean that it is not necessary to have thec onnection to a PLC 2 . IND890-Base – Standard Application IncludedThe multilingual IND890-Base soft-ware is a universally applicable weighing and service program for basic weighing tasks. It is a com-prehensive weighing solution for customers, but also providess upport for calibration officers and METTLER TOLEDO service techni -cians.Today’s Sophisticated Solutions – Simple ImplementationIf a standard application solution is no longer appropriate, speciala pplications can also be implement-ed. The integrated Microsoft ® technology offers software developers an ideal tool for fast and efficient implementation of customized solutions.Irrespective of the development en-vironment, there is simple drag-and-drop access to a wide range of system and weighing functions.Globally ConnectedThe use of the Windows operating systems allows remote configu-ration and maintenance of your ap-plication on the IND890. Software updates and e-mail services take place via the internet, VNC 1 or InSite ®.1VNC: Virtual Network Computing 2PLC: Programmable logic controller9M ETTLER T OLEDO IND890 PC Weighing Terminalmanually by operator guidance or by a regulation intervention from a dynamic checkweigher.Unnecessary material losses are thus avoided and statutory fill quantities and net weight specifica -tions are complied with. The soft -ware conforms to internal as wellas external, international standardssuch as ISO and GMP . In combina -tion with the IND890 for immediatedata recording, analysis and pro -cess control, supplies the necessary statistical data forassessing, documenting and control -ling the cost-effectiveness of a fill-ing process./freeweighnet The ® dosing and formulation system simplifies formu-lation processes. The intuitiveo perator guidance throughout the whole formulation process ensures uniform batch quality. At the same time, material use and process speed are optimized and the amount of manual work is reduced.Whether you are in the food, pharma -ceutical, chemical, cosmetic or manufacturing industry – ® has many advan-tages and can bring great benefit to your company:• Increased productivity• Complete batch documentation • G uaranteed consistently high product quality • R eliability and stability of pro -cesses • M ore efficient batch production/formweighnetThe quality of industrial filling pro -cesses ranges from stable and easy to control through to highly dispersive and difficult to control.Irrespective of the requirements forthe filling process, the use of enables systematicmonitoring and control of fillingprocesses, ensures conformity andhelps control losses arising fromoverfilling.As the fill quantities of liquid, pasty,powdery or solid products arechecked by taking random samplesimmediately after filling, precise system settings are ensured – eitherThe use of * for statistical quality control and * for professional formulation processing has proven to be a particularlys uccessful combination. These profitable tools can be used with the IND890 directly in production.A New Standard: IND890 and * or * ® ®* In preparation – more information at your local METTLER TOLEDO representative10M ETTLER T OLEDO IND890 PC Weighing TerminalTests and DiagnosisDimensionsT e c h n i c a l D a t aThe status of the IND890 terminal is analyzed using the integrated test and diagnosis functions. If neces -sary, direct measures for optimizing the system are taken.Communication with connected devic -es and balances can thus be tested very easily at any time, in order to avoid possible downtime, before amalfunction occurs.IND890-10 DeskIND890-10 PanelIND890-15-HMI Desk11M ETTLER T OLEDO IND890 PC Weighing TerminalHousing dimensions (maximum: H x W x D)IND890-10:253 x 320 x 241 mm IND890-15-HMI:350 x 490 x 349 mm IND890 ELO box:50 x 122 x 400 mmOperating environment–10°C to 40°C (14°F to 104°F), at 10 % to 85% relative humidity, non-condensingDisplayIND890-1010.2" Widescreen TFT Touchscreen display, resolution 1024 x 600IND890-1515,4" Widescreen TFT Touchscreen display, resolution 1280 x 800Processor typesIND890-10AMD Geode LX800 Processor IND890 ELO boxIntel Atom Processor 1.6 GHz RAM memoryFrom 256 MB to 2 GB Power supply unitWide-range power supply unit 100 – 240 V AC, 50/60 Hz, 250 mA with country-specific power lineData interfacesEthernet (standard), RS232, RS422, RS485, USBWeighing interfacesIDNet, analog, SICSGross dispatch weight (including packaging)IND890-10Desk: 5.5 kg Panel: 4.5 kg IND890-15-HMIDesk: 11.4 kg Panel: 8.5IND890 ELO box6.3 kg ApprovalsEC Conformity CE marking with declaration of conformity – admission for certification or pattern approval EC Directive 2009/23/EEC; EN 45 501; OIML R76; NTEP compliant – Electrical Safety EC Directive 2006/95/EEC; EN 61010-1, UL, CSA approved Electromagnetic compatibility EC Directive 2004/108/EEC; EN 61000-6-2, EN 61000-6-3Order numbersIND890-10 110/230 VDesk: 22019982Panel: 22019983IND890-15-HMI 110/230 VDesk: 22019984Panel: 22019985IND890 ELO box 110/230 VDesk: 22019986Data interfacesEthernet standardRS232: 22020258RS422/485: 22020259Balance interfacesAnalog: 22020254IDNet: 22020253SICS-RS232: 22020255 SICS-RS422: 22020256Technical DataIND890-15-HMI Panel IND890-ELO-BoxFor more information /ind890Mettler-Toledo AGIndustrialCH-8606 GreifenseeTel. +41-44-944 22 11Fax +41-44-944 31 70Subject to technical changes© 04/2011 Mettler-Toledo AGPrinted in Switzerland MTSI 44098080ServiceAdvantages Installation &Set-up • Precise, reproducible results through correct installation• Tried and tested data exchange with peripheral devices and systems• Predetermined operating sequences improve user productivity• Integration in work and maintenance processes• Fast and efficient process start-upInstrument qual-ification • Documented performance in line with process requirements• Regular inspections when used in production processes• Risk of infringing regulations is minimizedCalibration • Accuracy check over entire weighing range• Accuracy check at different points on weighing platform• Brief and compliant calibration certificate• Use of industry-specific and statutory tolerance standards• Reduction in product loss and/or overfilling• Reduction in liability risk due to products which do not comply with specifications Preventive maintenance• Inspection of critical components to identify potential faults• Inspection of audit and error logs to prevent unexpected downtime• Test operation for determining weighing and application performance• Reliable operation, avoidance of unexpected costs• Increased service life and yield return of balances The first step is selecting the right scale. Whether the desired results can be achieved is then dependent on factors such as precise installation, set-up,c alibration, maintenance, product and service, which ensure the performance,r eliability and durability of the scale.Through efficient maintenance and the adaptation of our service to your process and operating requirements, we can help you achieve accurate, reliable and comprehensible weighing results as well as the desired increase in productivity.Lifelong Constant Performancethrough Precision ServiceOur global service organization offers the following significant advantages:• Properly maintained devices which ensure productivity and optimize process performance.• Problem-free compliance with industry-specific standards and regulations • Clear and precise documentation to minimize the risk of infringements17025。
Agilent Connectivity Hardware for PC-to-Instrument ConnectionsData Sheetwith Agilent GPIBInstrument Control ProductsIntroducing Agilent GPIB Instrument Control Products Agilent connectivity products enable:• Easy connection to GPIB instruments based on simple plug-and-play setup and configuration• Use of PC-standard interfaces that are prevalent even on notebook PCs, such as USB and LAN• A wide selection of interfaces to fit your test system application– PCI, PCIe®, USB and LAN• Use of industry-standard I/O libraries which makes integrationof existing instruments and software programs in a singlesystem easy, even if you use multiple instrument vendors.Table of ContentsConnecting is as easy as 1-2-3 (3)Agilent IO Libraries Suite 16.0 (4)Agilent 82357B USB/GPIB Interface Converter (5)Agilent 82350B High-Performance PCI GPIB Interface Card (6)Agilent 82351A High-Performance PCI Express® (PCIe)GPIB Interface Card (7)Agilent E5810A LAN/GPIB Gateway (8)Agilent GPIB Instrument Control Products Summary (9)Related Agilent Literature (10)Contact Agilent.........................................................................Back coverConnecting is as Easy as 1-2-3Establish a connection in less than 15 minutesAgilent IO Libraries Suite eliminates the many working hours it takes to connect and configure PC-controlled test systems, especially if it involves instruments from multiple vendors. In fact, with IO Libraries, connecting your instruments to a PC is as easy as connecting a PC to a printer. Easily mix instruments from different vendorsAgilent IO Libraries Suite eliminates headaches associated with trying to combine hardware and software from different vendors. The software is compatible with GPIB, USB, LAN and RS-232 test instruments that adhere to the supported interface standards, no matter who makes them.When you install the IO Libraries Suite, the software checks for the presence of other I/O software on your computer. If it finds another ven-dor’s VISA libraries, it automatically installs in a side-by-side mode that allows you to use the existing I/O software and the Agilent software together in multi-vendor systems.Work in the environment that’s comfortable to youIn addition, the IO Libraries are compatible with a variety of applica-tion development environments and programming APIs including Agilent or NI VISA, VISA COM, SICL, Agilent 488 (compatible with NI-488.2), and Agilent VEE. There is flexibility to choose the software and hardware of your choice to get your job done. Works with millions of existing instruments from hundreds of vendorsAgilent connectivity products and IO Libraries are trusted and known for their reliability. The IO Libraries ships with more than 150 instruments from Agilent Technologies. If you already own an Agilent connectivity product or instrument, you can download the latest version of Agilent IO Libraries Suite for free.Agilent IO Libraries Suite 16.0PC softwareOperating system• Windows® 7 32-bit and 64-bit (Starter, Home Basic, Home Premium, Professional, Ultimate,Enterprise)• Windows Vista® SP1 and SP2 32-bit and 64-bit (Home, Home Premium, Business, Ultimate,Enterprise Editions)• Windows XP Pro or Home edition service pack 3 or later, 32-bit onlyPC hardwareProcessor600 MHz class (800 MHz or greater recommended)RAM• Windows XP: 256 MB minimum (1 GB or greater recommended)• Windows Vista or Windows 7: 1 GB minimumHard disk space required 1.5 GBDisplay800 x 600, 256 colorsVB6VISA COM, VISA, SICL, Agilent 488, Excel VBAC/C++, Managed C++VISA COM, VISA, Agilent 488.NET languages (, C#)VISA COM, VISA, Agilent 488LabVIEW VISA, Agilent 488MATLAB VISANote: Agilent IO Libraries Suite supports VEE Pro program development with drivers and/or Direct IO.Connection Expert Automatically scans and configures your instrument IO, helps you get connected quickly and easilyand displays the status of your interfaces and instrumentsInteractive IO Lets you quickly send commands to instruments and read responsesIO Monitor Lets you monitor and debug I/O calls made on any of Agilent’s supported buses using Agilent SICL,VISA, VISA COM, or Agilent IVI instrument drivers (released after September 18, 2010)IO control Provides easy access to the IO Libraries Suite from the Windows system trayviFind32Debug utility uses VISA functions to find resources and lists them in a console windowSee the following URL for more information or for the latest updates: /find/iosuiteAgilent 82357B USB/GPIB Interface ConverterFeatures• Fast and easy connection to GPIB instruments • Uses standard USB and IEEE-488 interfaces • Maximum GPIB transfer rate of 1.15 MB/s • Parallel polling capabilityBest for• Easiest GPIB connectivity • Notebook computer GPIB connectionConnect GPIB instruments quickly and easily to your computer’s USB portThe Agilent 82357B USB/GPIBinterface provides a direct connection from the USB port on your desktop and laptop computers to GPIB instru-ments. Once the software is loaded, your computer automatically detects the 82357B when it is connected to the USB port of the computer.The 82357B is a plug-and-play device. It is also hot-pluggable, making it easy to connect and disconnect without having to shut down thecomputer. No external power supplies are necessary.The 82357B USB/GPIB interface implements USB 1.1 (12 Mbits/s) and is compatible with USB 2.0. The 82357B USB/GPIB interface uses a thin, flexible, high-quality USB cable that is USB 2.0-compliant. The USB cable is shielded, and the connector is specified to 1,500 insertions, ensur-ing a durable connection and reliabledata transfer.Includes Agilent IO Libraries Suite and VISA/SICL programming manuals on CD-ROM AccessoriesNoneBoosting performance with simplest connectivityAgilent 82350B High-Performance PCI GPIB Interface CardFeatures• PCI IEEE-488 interface for PCs • Transfer rates up to 900 KB/s • Dual processor support on the latest Windows operating systemBest for• Maximum GPIB throughput for all configurationsHigh performance formanufacturing test applicationsThe 82350B is Agilent’s highest-performance GPIB interface. With a direct PCI computer connection, transaction overhead is minimized for the best overall performance.The 82350B card de-couples GPIB transfers from PCI bus transfers. Buffering provides connectivity and system performance that is superior to direct memory access (DMA). The hardware is software-configurable and compatible with the plug-and-play standard for easy hardware installation. The GPIB interface card plugs into a 5 volt PCI slot in thebackplane of your PC.Includes Agilent IO Libraries Suite and VISA/SICL programming manuals on CD-ROMAccessoriesGPIB cables/adapter (see page 9)This traditional GPIB connection still offers the highest throughputAgilent 82351A High-Performance PCI Express ® (PCIe) GPIB Interface CardFeatures• Compact half-height size (68.9 mm)• High transfer rate of 1.4 MB/s • High flexibility via up-plugging (to x4 or x8 PCIe slots)• 3.3 V signal level for lower power consumptionBest for• Bandwidth-intensive PC applications • Adding GPIB connection for PCIe based PCs or workstationsHigh transfer rate fordemanding test applicationsThe Agilent 82351A PCIe-GPIB interface card is designed forintegration into next generation PCs or workstations. It offers fast data transmission for various demanding test applications that require data to be transferred to memory fast enough without any loss or overwriting. PCIe (PCI Express) is an evolutionary version of PCI that offers a higher transfer rate across a low number of wires. It is also backward-compatible with PCI software, so you don’t need to perform any code re-configuration. The powerful bus architecture of PCIe allows bidirectional data transmis-sion, and the implementation of anew class of test applications.Includes Agilent IO Libraries Suite and VISA/SICL programming manuals on CD-ROMAccessoriesGPIB cables/adapter (see page 9)New standard for high-speed internal devicesAgilent E5810A LAN/GPIB GatewayFeatures• Remote access and control of GPIB instruments via LAN • Easy setup and use via digital display and web browserBest for• Connection to remote GPIB and RS-232 instrumentation • Shared test systemsRemote access and collaboration with GPIB instruments via your LANThe E5810A can use DHCP, if avail-able, to automatically configure nec-essary network parameters, including its IP address. The gateway can be controlled from multiple locations and by multiple users via your LAN, so it is easy to share control of instru-ments from locations worldwide.For easy remote access, enter the IP address from the digital display as the URL in your web browser and gain access to connected GPIB and RS-232 instruments. Then use your browser to send instrument com-mands interactively, and quickly see your measurement results. Use the digital display and LEDs to check the IP address and troubleshoot locally.System useFor system environments, the E5810A gateway can be mounted on a rack. The rack mount kit (Option 100) allows two devices to be placed side-by-side in one rack width. With its built-in power supply, there are noadditional power modules to mount.Includes Agilent IO Libraries Suite and VISA/SICL programming manuals on CD-ROMAccessories• GPIB cables/adapter (see page 9)• Rack Mount Kit (Option 100)Take advantage of LAN technology for your GPIB instruments and test systemsAgilent GPIB Instrument Control Products Summary CablesAgilent also offers a variety of cables that provide easy and reliable connec-tions. Agilent cables are engineered for exceptional reliability and durability, even under the harshestconditions.Cable Length 10833D GPIB cable0.5 meter 10833A GPIB cable 1 meter 10833B GPIB cable 2 m10833C GPIB cable 4 m10833F GPIB cable 6 m10833G GPIB cable8 mAdaptersThe 10834A GPIB-to-GPIB adapter can help when limited rear-panel space and other design consider-ations make cabling difficult. The 10834A adapter extends the first cable by 2.3 cm away from the rear panel to provide clearance for other connectors, switches, and cables.GPIB board82350B PCI/GPIB card• GPIB connection for PCI-based PCs orworkstations• Maximum throughput for allconfigurations up to 900 KB/s82351A PCIe/GPIB card• GPIB connection for PCIe-based PCsor workstations• High throughput applications up to1.4 MB/sUSB converter82357B USB/GPIB card• GPIB connectivity, even for notebookcomputers• Easiest GPIB instrument set-up to PC LAN converter E5810A LAN/GPIBgateway• Connection to remote GPIB andRS-232 instruments• Test-system sharing and collaborationamong multiple usersCable10833x GPIB cables• Connection between GPIBinstruments (daisy-chain)• Connection from GPIB instrument tothe PCI/GPIB or PCIe/GPIB card• Connection from GPIB instrument tothe LAN/GPIB gatewayAdapter10834A GPIB-to-GPIBadapter• 2.3-cm clearance at GPIB instrument’srear panelTypical configurations of PC-to-instrument connectionRelated Agilent LiteratureThis article is the fourth of a series of four application notes with System Developers in mind. It explains with great depth how you can simplify test integration by taking advantage of open connectivity standards. Meet your throughput requirements yet stay within budget.Where to download: /find/gpibAgilent Email Updates/find/emailupdates Get the latest information on the products and applications you select.LAN eXtensions for Instruments puts the power of Ethernet and the Web inside your test systems. Agilent is a founding member of the LXI consortium.Agilent Channel Partnersw w w /find/channelpartners Get the best of both worlds: Agilent’s measurement expertise and product breadth, combined with channel partner convenience. AdvancedTCA ® Extensions for Instrumentation and Test (AXIe) is an open standard that extends the AdvancedTCA ® for general purpose and semiconductor test. Agilent is a founding member of the AXIe consortium.PCI eXtensions for Instrumentation (PXI) modular instrumentation delivers a rugged, PC-based high-performance measurement and automation system.Agilent Advantage Services is com-mitted to your success throughout your equipment’s lifetime. We share measurement and service expertise to help you create the products that change our world. To keep you com-petitive, we continually invest in tools and processes that speed up calibra-tion and repair, reduce your cost of ownership, and move us ahead of your development curve./quality/find/advantageservicesFor more information on AgilentTechnologies’ products, applications or services, please contact your local Agilent office. The complete list is available at:/find/contactus Americas Canada (877) 894 4414 Brazil (11) 4197 3500Mexico 01800 5064 800 United States (800) 829 4444Asia Pacific Australia 1 800 629 485China 800 810 0189Hong Kong 800 938 693India 1 800 112 929Japan 0120 (421) 345Korea 080 769 0800Malaysia 1 800 888 848Singapore 180****8100Taiwan 0800 047 866Other AP Countries (65) 375 8100 Europe & Middle East Belgium 32 (0) 2 404 93 40 Denmark 45 70 13 15 15Finland 358 (0) 10 855 2100France 0825 010 700**0.125 €/minuteGermany 49 (0) 7031 464 6333 Ireland 1890 924 204Israel 972-3-9288-504/544Italy39 02 92 60 8484Netherlands 31 (0) 20 547 2111Spain 34 (91) 631 3300Sweden0200-88 22 55United Kingdom 44 (0) 118 9276201For other unlisted Countries:/find/contactusRevised: October 14, 2010Product specifications and descriptions in this document subject to change without notice.© Agilent Technologies, Inc. 2011Printed in USA, May 6, 20115989-1889ENPCIe and PCI Express are US registered trademarks and/or service marks of PCI-SIG.Windows, Windows Vista and Microsoft are trademarks or registered trademarks of Microsoft Corporation in the United States and/or other countries.。
ebs wip 事务处理类型1.事务处理类型包括串行事务处理和并行事务处理。
Transaction processing types include serial transaction processing and parallel transaction processing.2.串行事务处理是一次只处理一个事务,而并行事务处理可以同时处理多个事务。
Serial transaction processing handles only onetransaction at a time, while parallel transaction processing can handle multiple transactions simultaneously.3.事务处理类型的选择取决于系统的性能要求和业务需求。
The selection of transaction processing types depends on the system's performance requirements and business needs.4.对于需要高吞吐量和低延迟的系统,通常会选择并行事务处理。
For systems that require high throughput and low latency, parallel transaction processing is usually chosen.5.而对于一些简单的应用场景,串行事务处理可能已经足够满足需求。
For some simple application scenarios, serial transaction processing may already be sufficient to meet the needs.6.事务处理类型的选择还需要考虑系统的可扩展性和容错性。
The selection of transaction processing types also needs to consider the system's scalability and fault tolerance.7.在选择事务处理类型时,还需要平衡系统的资源利用和性能表现。
计算机组成与设计:《计算机组成与设计》是2010年机械工业出版社出版的图书,作者是帕特森(DavidA.Patterson)。
该书讲述的是采用了一个MIPS 处理器来展示计算机硬件技术、流水线、存储器的层次结构以及I/O 等基本功能。
此外,该书还包括一些关于x86架构的介绍。
内容简介:这本最畅销的计算机组成书籍经过全面更新,关注现今发生在计算机体系结构领域的革命性变革:从单处理器发展到多核微处理器。
此外,出版这本书的ARM版是为了强调嵌入式系统对于全亚洲计算行业的重要性,并采用ARM处理器来讨论实际计算机的指令集和算术运算。
因为ARM是用于嵌入式设备的最流行的指令集架构,而全世界每年约销售40亿个嵌入式设备。
采用ARMv6(ARM 11系列)为主要架构来展示指令系统和计算机算术运算的基本功能。
覆盖从串行计算到并行计算的革命性变革,新增了关于并行化的一章,并且每章中还有一些强调并行硬件和软件主题的小节。
新增一个由NVIDIA的首席科学家和架构主管撰写的附录,介绍了现代GPU的出现和重要性,首次详细描述了这个针对可视计算进行了优化的高度并行化、多线程、多核的处理器。
描述一种度量多核性能的独特方法——“Roofline model”,自带benchmark测试和分析AMD Opteron X4、Intel Xeo 5000、Sun Ultra SPARC T2和IBM Cell的性能。
涵盖了一些关于闪存和虚拟机的新内容。
提供了大量富有启发性的练习题,内容达200多页。
将AMD Opteron X4和Intel Nehalem作为贯穿《计算机组成与设计:硬件/软件接口(英文版·第4版·ARM版)》的实例。
用SPEC CPU2006组件更新了所有处理器性能实例。
图书目录:1 Computer Abstractions and Technology1.1 Introduction1.2 BelowYour Program1.3 Under the Covers1.4 Performance1.5 The Power Wall1.6 The Sea Change: The Switch from Uniprocessors to Multiprocessors1.7 Real Stuff: Manufacturing and Benchmarking the AMD Opteron X41.8 Fallacies and Pitfalls1.9 Concluding Remarks1.10 Historical Perspective and Further Reading1.11 Exercises2 Instructions: Language of the Computer2.1 Introduction2.2 Operations of the Computer Hardware2.3 Operands of the Computer Hardware2.4 Signed and Unsigned Numbers2.5 Representing Instructions in the Computer2.6 Logical Operations2.7 Instructions for Making Decisions2.8 Supporting Procedures in Computer Hardware2.9 Communicating with People2.10 ARM Addressing for 32-Bit Immediates and More Complex Addressing Modes2.11 Parallelism and Instructions: Synchronization2.12 Translating and Starting a Program2.13 A C Sort Example to Put lt AU Together2.14 Arrays versus Pointers2.15 Advanced Material: Compiling C and Interpreting Java2.16 Real Stuff." MIPS Instructions2.17 Real Stuff: x86 Instructions2.18 Fallacies and Pitfalls2.19 Conduding Remarks2.20 Historical Perspective and Further Reading2.21 Exercises3 Arithmetic for Computers3.1 Introduction3.2 Addition and Subtraction3.3 Multiplication3.4 Division3.5 Floating Point3.6 Parallelism and Computer Arithmetic: Associativity 3.7 Real Stuff: Floating Point in the x863.8 Fallacies and Pitfalls3.9 Concluding Remarks3.10 Historical Perspective and Further Reading3.11 Exercises4 The Processor4.1 Introduction4.2 Logic Design Conventions4.3 Building a Datapath4.4 A Simple Implementation Scheme4.5 An Overview of Pipelining4.6 Pipelined Datapath and Control4.7 Data Hazards: Forwarding versus Stalling4.8 Control Hazards4.9 Exceptions4.10 Parallelism and Advanced Instruction-Level Parallelism4.11 Real Stuff: theAMD OpteronX4 (Barcelona)Pipeline4.12 Advanced Topic: an Introduction to Digital Design Using a Hardware Design Language to Describe and Model a Pipelineand More Pipelining Illustrations4.13 Fallacies and Pitfalls4.14 Concluding Remarks4.15 Historical Perspective and Further Reading4.16 Exercises5 Large and Fast: Exploiting Memory Hierarchy5.1 Introduction5.2 The Basics of Caches5.3 Measuring and Improving Cache Performance5.4 Virtual Memory5.5 A Common Framework for Memory Hierarchies5.6 Virtual Machines5.7 Using a Finite-State Machine to Control a Simple Cache5.8 Parallelism and Memory Hierarchies: Cache Coherence5.9 Advanced Material: Implementing Cache Controllers5.10 Real Stuff: the AMD Opteron X4 (Barcelona)and Intel NehalemMemory Hierarchies5.11 Fallacies and Pitfalls5.12 Concluding Remarks5.13 Historical Perspective and Further Reading5.14 Exercises6 Storage and Other I/0 Topics6.1 Introduction6.2 Dependability, Reliability, and Availability6.3 Disk Storage6.4 Flash Storage6.5 Connecting Processors, Memory, and I/O Devices6.6 Interfacing I/O Devices to the Processor, Memory, andOperating System6.7 I/O Performance Measures: Examples from Disk and File Systems6.8 Designing an I/O System6.9 Parallelism and I/O: Redundant Arrays of Inexpensive Disks6.10 Real Stuff: Sun Fire x4150 Server6.11 Advanced Topics: Networks6.12 Fallacies and Pitfalls6.13 Concluding Remarks6.14 Historical Perspective and Further Reading6.15 Exercises7 Multicores, Multiprocessors, and Clusters7.1 Introduction7.2 The Difficulty of Creating Parallel Processing Programs7.3 Shared Memory Multiprocessors7.4 Clusters and Other Message-Passing Multiprocessors7.5 Hardware Multithreading 637.6 SISD,MIMD,SIMD,SPMD,and Vector7.7 Introduction to Graphics Processing Units7.8 Introduction to Multiprocessor Network Topologies7.9 Multiprocessor Benchmarks7.10 Roofline:A Simple Performance Model7.11 Real Stuff:Benchmarking Four Multicores Using theRooflineMudd7.12 Fallacies and Pitfalls7.13 Concluding Remarks7.14 Historical Perspective and Further Reading7.15 ExercisesInuexC D-ROM CONTENTA Graphics and Computing GPUSA.1 IntroductionA.2 GPU System ArchitecturesA.3 Scalable Parallelism-Programming GPUSA.4 Multithreaded Multiprocessor ArchitectureA.5 Paralld Memory System G.6 Floating PointA.6 Floating Point ArithmeticA.7 Real Stuff:The NVIDIA GeForce 8800A.8 Real Stuff:MappingApplications to GPUsA.9 Fallacies and PitflaUsA.10 Conduding RemarksA.1l HistoricalPerspectiveandFurtherReadingB1 ARM and Thumb Assembler InstructionsB1.1 Using This AppendixB1.2 SyntaxB1.3 Alphabetical List ofARM and Thumb Instructions B1.4 ARM Asembler Quick ReferenceB1.5 GNU Assembler Quick ReferenceB2 ARM and Thumb Instruction EncodingsB3 Intruction Cycle TimingsC The Basics of Logic DesignD Mapping Control to HardwareADVANCED CONTENTHISTORICAL PERSPECTIVES & FURTHER READINGTUTORIALSSOFTWARE作者简介:David A.Patterson,加州大学伯克利分校计算机科学系教授。
英:AD CONVERTER 中:模拟数字转换器英:AC [Alternating Current] 中:交流电英:ACTIVE 中:有源英:ACTIVE SENSING 中:活动检测英:ADDITIVE SYNTHESIS 中:加法合成英:ADSR [Attack Decay Sustain Release] 中:ADSR 英:AFL [After Fade listen] 中:推子之后监听英:AFTERTOUCH 中:触后英:ALGORITHM 中:算法英:ALIASING 中:混淆英:AMBIENCE 中:氛围英:AMP [Ampere] 中:安培英:AMPLIFIER 中:扩大器、放大器英:AMPLITUDE 中:幅度英:ANALOGUE 中:模拟英:ANALOGUE SYNTHESIS 中:模拟合成英:ANTI-ALIASING FILTER 中:反混淆滤波器英:APPLICATION 中:应用英:ARPEGGIATOR 中:琶音器英:ASCII 中:美国标准信息交换代码英:A TTACK 中:上冲、起音英:A TTENUATE 中:衰减英:AU [Audio Units] 中:AU效果器虚拟乐器英:AUDIO FREQUENCY 中:音频英:AUTOLOCATOR 中:暂无英:AUX 中:辅助英:AUX RETURN 中:辅助返回英:AUX SEND 中:辅助发送英:AZIMUTH 中:方位角英:BACKUP 中:备份英:BALANCE 中:平衡英:BALANCED WIRING 中:平衡配线英:BANDPASS 中:带通英:BANDWIDTH 中:带宽英:BETA VERSION 中:测试版英:BIAS 中:偏磁英:BINARY 中:二进制英:BIOS 中:基本输入输出系统英:BIT 中:比特英:BOOSTCUT CONTROL 中:提升削减控制英:BOUNCING 中:并轨英:BPF [BAND PASS FILTER] 中:带通滤波器英:BPM 中:每分钟拍子数英:BREATH CONTROLLER 中:呼吸控制器英:BUFFER 中:缓冲器英:BUFFER MEMORY 中:缓冲内存英:BUG 中:故障英:BUS 中:总线英:BYTE 中:字节英:CAPACITANCE 中:电容英:CAPACITOR 中:电容器英:CAPACITOR MICROPHONE 中:电容麦克风英:CARDIOID 中:心形英:CD-R 中:CD-R英:CD-R BURNER 中:CD刻录机英:CHANNEL 中:通道英:CHASE 中:跟踪英:CHIP 中:芯片英:CHORD 中:和弦英:CHORUS 中:合唱英:CHROMATIC 中:半音阶英:CLICK TRACK 中:节拍音轨英:CLIPPING 中:剪切英:CLONE 中:克隆英:COMMON MODE REJECTION 中:共模抑制英:COMPANDER 中:压缩扩展器英:COMPRESSOR 中:压缩器英:COMPUTER 中:计算机英:CONDUCTOR 中:导体英:CONSOLE 中:控制台英:CONTACT ENHANCER 中:接触增强剂英:CONTINUOUS CONTROLLER 中:连续控制器英:COPY PROTECTION 中:复制保护英:CRASH 中:死机英:CUT AND PASTE EDITING 中:剪贴编辑英:CUTOFF FREQUENCY 中:截止频率英:CV [Controlled V oltage] 中:控制电压英:CYCLE 中:周期英:DAISY CHAIN 中:链接英:DAMPING 中:阻尼英:DAT [Digital Audio Tape] 中:数字音频磁带录音机英:DA TA 中:数据英:DA TA COMPRESSION 中:数据压缩英:Db [deciBel] 中:分贝英:dBOctave 中:分贝八度英:dBm 中:dBm英:dBv 中:dBv英:dBV 中:dBV英:dbx 中:dbx英:DC [Direct current] 中:直流电英:DCC 中:DCC英:DCO [Digitally Controlled Oscillator] 中:数控振荡器英:DDL [Digital Delay Line] 中:DDL英:DECAY 中:衰退、衰减英:DEFRAGMENT 中:整理碎片英:DEOXIDISING COMPOUND 中:脱氧化合物英:DETENT 中:定位点英:DI [Direct Inject] 中:直接注入英:DI BOX 中:DI盒英:DIGITAL 中:数字的英:DIGITAL DELAY 中:数字延迟英:DIGITAL REVERB 中:数字混响英:DIN CONNECTOR 中:DIN(德国工业标准)接插连接英:DIRECT COUPLING 中:直接耦合英:DISC 中:对塑胶唱片、CD唱片和MiniDiscs的统称英:DISK [Diskette] 中:电脑软盘、硬盘和可移动磁盘(光盘)等英:DITHER 中:抖动英:DMA [Direct Memory Access] 中:存储器直接访问英:DOLBY 中:杜比英:DOS [Disk Operating System] 中:磁盘操作系统英:DRIVER 中:驱动、驱动器英:DRUM PAD 中:鼓垫英:DRY 中:干声英:DSP [Digital Signal Processor] 中:数字信号处理器英:DUBBING 中:配音英:DUCKING 中:闪避英:DUMP 中:倾倒英:DX [DirectX] 中:DX效果器英:EARL Y REFLECTIONS 中:早期反射英:EFFECT 中:效果英:EFFECTS LOOP 中:效果环路英:EFFECTS RETURN 中:效果返回英:ELECTRET MICROPHONE 中:驻极体麦克凤英:ENCODEDECODE 中:编码解码英:ENHANCER 中:增强器英:ENVELOPE 中:包络英:ENVELOPE GENERA TOR 中:包络发生器英:Enable Preroll and Postroll Preview 中:允许提前和滞后试听英:EQUALISER 中:均衡器英:ERASE 中:抹去英:EVENT 中:事件英:EXCITER 中:激励器英:EXPANDER MODULE 中:扩展模块英:FADER 中:推子英:FERRIC 中:铁的英:FET [Field Effect Transistor] 中:场效应晶体管英:FFT [Fast Fourier Transform Algorithm] 中:快速傅立叶变换算法英:FIGURE-OF-EIGHT 中:8字型英:FILE 中:用数字形式存储的一组数据英:FILTER 中:滤波器英:FLANGING 中:凸缘英:FLOPPY DISK 中:软盘英:FLUTTER ECHO 中:飘动回声英:FOLDBACK 中:折回英:FORMANT 中:共振峰英:FORMA T 中:格式化英:FRAGMENTA TION 中:碎片英:FREQUENCY 中:频率英:FREQUENCY RESPONSE 中:频率响应英:FSK [Frequency Shift Keying] 中:频移键控英:FUNDAMENTAL 中:基频英:FX [Effects] 中:效果的简称英:FX Parameter Envelopes 中:效果参数包络英:GAIN 中:增益英:GA TE 中:门、门限、噪声门英:GLITCH 中:小故障英:GM [GENERAL MIDI] 中:GM英:GM RESET 中:GM复位英:GRAPHIC EQUALISER 中:图示均衡器英:GROUND 中:地英:GROUND LOOP 中:接地回路英:GROUP 中:编组英:GS 中:GS英:HARD DISK 中:硬盘英:HARMONIC 中:谐波、泛音英:HARMONIC DISTORTION 中:谐波失真英:HEAD 中:磁头英:HEADROOM 中:动态余量英:HISS 中:“咝”声英:HPF [HIGH PASS FILTER] 中:高通滤波器英:HUM 中:“嗡”声英:Hz [Hertz] 中:赫兹英:IO [InputOutput] 中:输入输出英:IC [Integrated Circuit] 中:集成电路英:IMPEDANCE 中:阻抗英:INITIALISE 中:初始化英:INSERT POINT 中:插入点英:INSULATOR 中:绝缘体英:INTERFACE 中:接口英:INTERMITTENT 中:间歇英:INTERMODULATION DISTORTION 中:互调失真英:IPS [Inches Per Second] 中:英寸每秒英:IRQ [Interrupt Request] 中:中断请求英:ISOPROPYL ALCOHOL 中:异丙基酒精英:JACK 中:插座英:JARGON 中:行话英:k [Kilo] 中:1000的简写英:LCD [Liquid Crystal Display] 中:液晶显示器英:LED [Light Emitting Diode] 中:发光二极管英:LFO [Low Frequency Oscillator] 中:低频振荡器英:LIMITER 中:限制器英:LINE LEVEL 中:线路电平英:LINEAR 中:线性英:LOAD 中:负载英:LOCAL ONOFF 中:本地开关英:LOGIC 中:逻辑电路英:LOOP 中:循环英:LPF [LOW PASS FILTER] 中:低通滤波器英:LSB [Least Significant Byte] 中:最低位英:Ma 中:毫安英:MACHINE HEAD 中:吉他调弦机械英:Mb [Megabit] 中:兆比特英:MB [MegaByte] 中:兆字节英:MDM [Modular Digital Multitrack] 中:模块数字多轨机英:MEG [Mega] 中:兆英:MEMORY 中:记忆英:MENU 中:菜单英:MIC LEVEL 中:麦克风电平英:MICROPROCESSOR 中:微处理器英:MIDI [Musical Instrument Digital Interface] 中:音乐设备数字接口英:MIDI ANAL YSER 中:MIDI分析器英:MIDI BANK CHANGE 中:MIDI音色库变换英:MIDI CONTROL CHANGE 中:MIDI控制变换英:MIDI CONTROLLER 中:MIDI控制器英:MIDI IMPLEMENTATION CHART 中:MIDI执行表英:MIDI IN 中:MIDI输入英:MIDI MERGE 中:MIDI合并英:MIDI MODE 中:MIDI模式英:MIDI MODULE 中:MIDI模块、音源英:MIDI NOTE NUMBER 中:MIDI音符编号英:MIDI NOTE OFF 中:MIDI音符关英:MIDI NOTE ON 中:MIDI音符开英:MIDI OUT 中:MIDI输出英:MIDI PORT 中:MIDI端口英:MIDI PROGRAM CHANGE 中:MIDI程序变换英:MIDI SPLITTER 中:MIDI分割器英:MIDI SYNC 中:MIDI同步英:MIDI THRU 中:MIDI通过英:MIDI THRU BOX 中:MIDI通过器英:MIXER 中:调音台英:MONITOR 中:监听英:MONOPHONIC 中:单音英:MOTHERBOARD 中:主板英:MTC [MIDI Time Code] 中:MIDI时间码英:MULTI-SAMPLE 中:多重采样英:MULTI-TIMBRAL 中:多音色英:MULTITIMBRAL MODULE 中:多音色模块英:MULTITRACK 中:多轨机英:NEAR FIELD 中:近场英:NOISE REDUCTION 中:降噪英:NOISE SHAPING 中:噪声成型英:NON-LINEAR RECORDING 中:非线性录音英:NORMALISE、Normalize 中:正常化、标准化英:NRPN [NON REGISTERED PARAMETER NUMBER] 中:非注册参数号英:NUT 中:弦枕英:NYQUIST THEOREM 中:奈奎斯特定理英:OCTA VE 中:八度英:OFF-LINE 中:离线英:OHM 中:欧姆英:OMNI 中:全部英:OPEN CIRCUIT 中:开路英:OPEN REEL 中:开盘英:OPTO ELECTRONIC DEVICE 中:光学电子设备英:OS [OPERATING SYSTEM] 中:操作系统英:OSCILLATOR 中:振荡器英:OVERDUB 中:重叠、配音英:OVERLOAD 中:超载英:PAD 中:减少信号电平的阻抗电路英:PAN POT 中:声像电位器英:Pan Envelopes 中:声像(声相)包络英:PARALLEL 中:并联英:PARAMETER 中:参数英:PARAMETRIC equalizer 中:参量均衡器英:PASSIVE 中:无源英:PATCH 中:程序英:PATCH BAY 中:配线板英:PATCH CORD 中:配线英:PEAK 中:峰值英:PFL [Pre Fade Listen] 中:推子前监听英:PHANTOM POWER 中:幻像电源英:PHASE 中:相位英:PHASER 中:法兹器、移相器英:PHONO PLUG 中:唱机插头、莲花头英:PICKUP 中:拾音器英:PITCH 中:音高、音频频率英:PITCH BEND 中:弯音英:PITCH SHIFTER 中:音高移动英:POL Y MODE 中:复音模式英:POL YPHONY 中:复音英:PORT 中:端口英:PORTAMENTO 中:滑音英:POST PRODUCTION 中:后期制作英:POST-FADE 中:推子后英:Postroll 中:释放量:指定在播放或录音时在终点之后多少时间内停止工作(即滞后终止工作)英:POWER SUPPL Y 中:电源英:POW-r 中:心理声学字长减少优化英:PPM [Peak Programme Meter] 中:峰值的电平表英:PPQN [Pulsed Per Quarter Note] 中:PPQN英:PQ CODING 中:暂无英:PRE-EMPHASIS 中:预加重英:PRE-FADE 中:暂无英:PRESET 中:预置英:PRESSURE 中:压力、触后英:Preroll 中:提前量:指定在播放或录音时在起点之前多少时间内开始工作(即提前工作)英:PRINT THROUGH 中:透印英:PROCESSOR 中:处理器英:PROGRAM CHANGE 中:程序变换英:PULSE WA VE 中:脉冲波英:PULSE WIDTH MODULATION 中:脉冲宽度调制英:PUNCH IN 中:穿入英:Q 中:品质因数英:QUANTIZE 中:量化英:E-PROM [Erasable Programmable Read Only Memory] 中:E-PROM英:RAM [Random Access Memory] 中:RAM英:RCA [Radio Corporation America] 中:美国无线电公司英:R-DAT 中:R-DAT英:REAL TIME 中:实时英:RELEASE 中:释放、释音英:RESISTANCE 中:电阻英:RESOLUTION 中:分解度英:RESONANCE 中:共鸣、谐振英:REVERB 中:混响英:RF [Radio Frequency] 中:无线电频率、射频英:RF Interference 中:射频干扰英:RIBBON MICROPHONE 中:带状麦克风英:RING MODULATOR 中:环形调制器英:RMS [Root Mean Square] 中:均方根值英:ROLL-OFF 中:滚降英:ROM [Read Only Memory] 中:ROM英:SN [SIGNAL-TO-NOISE RA TIO] 中:信噪比英:SPDIF [SonyPhilips Digital InterFace] 中:SPDIF英:SAFETY COPY 中:安全拷贝英:SAMPLE 中:采样、样本英:SAMPLE AND HOLD 中:采样和保持英:SAMPLE RATE 中:采样率英:SAWTOOTH W A VE 中:锯齿波英:SCSI [Small Computer Systems Interface] 中:小型机系统接口英:SEQUENCER 中:音序器英:SESSION TAPE 中:原始录音磁带英:SHORT CIRCUIT 中:短路英:SIBILANCE 中:高频哨声、齿音英:SIDE CHAIN 中:旁链英:SIGNAL 中:信号英:SIGNAL CHAIN 中:信号链英:SINE WA VE 中:正弦波英:SINGLE ENDED NOISE REDUCTION 中:信号末端噪声降低英:SLA VE 中:从属的英:SMPTE 中:SMPTE英:SOUND ON SOUND 中:声上声英:SPL [Sound Pressure Level] 中:声压电平英:SPP [Song Position Pointer] 中:乐曲位置指针英:SQUARE W A VE 中:方波英:STANDARD MIDI FILE 中:标准MIDI文件英:STEP TIME 中:步长英:STEREO 中:立体声英:STRIPE 中:条纹英:SUB BASS 中:超低音英:SUBCODE 中:暂无英:SUBTRACTIVE SYNTHESIS 中:减法合成英:SURGE 中:浪涌英:SUSTAIN 中:保持英:SWEET SPOT 中:最佳听音点英:SWITCHING POWER SUPPL Y 中:开关电源英:SYNC [synchronization] 中:同步英:Synth [SYNTHESIZER] 中:合成器英:TAPE HEAD 中:录放磁头英:TEMPO 中:速度英:Tempo Envelopes 中:速度包络英:TEST TONE 中:测试音英:THD [Total Harmonic Distortion] 中:总谐波失真英:THRU 中:通过英:TIMBRE 中:音色英:TOSLINK 中:TOSLINK英:TRACK 中:音轨英:TRACKING 中:跟踪英:TRANSDUCER 中:变换器英:TRANSPARENCY 中:透明英:TRANSPOSE 中:移调英:TREMOLO 中:振音英:TRIANGLE WA VE 中:三角波英:TRS JACK [Tip Ring Sleeve JACK] 中:大三芯英:TRUSS ROD 中:暂无英:UNBALANCED 中:不平衡英:UNISON 中:齐奏英:USB [Universal Serial Buss] 中:USB英:V ALVE、TUBE 中:电子管、真空管英:VELOCITY 中:力度英:VIBRATO 中:颤音英:VOCODER 中:声码器英:VOICE 中:复音英:V olume Envelopes 中:音量包络英:VST [Virtual Studio Technology] 中:VST效果器英:VSTi [Virtual Studio Technology Instruments] 中:VSTi虚拟乐器英:VU Meter [Volume Unit Meter] 中:VU表英:W AH PEDAL 中:哇音踏板英:W ARMTH 中:温暖英:wet/dry mix envelopes 中:干湿混响包络、混音干湿包络英:W ATT 中:瓦特英:W A VEFORM 中:波形英:WHITE NOISE 中:白噪声英:WORD CLOCK 中:字时钟英:WRITE 中:写入英:XG 中:XG英:XLR 中:卡农头英:Y-Lead 中:Y型接线英:ZENITH 中:磁头排列参数英:ZERO CROSSING POINT 中:零交叉英:ZIPPER NOISE 中:暂无====================================================================== ======================音乐类型专有名词Background 背景樂Dance 舞會Dinner 晚宴Drunken Brawl 喧鬧宴會Party 聚會Rave 銳舞Romantic 浪漫Seasonal 季節Comatose 昏沉Mellow 柔美Morose 郁悶Tranquil 嫻靜Upbeat 歡快Wild 瘋狂Fast 快Moderate 普通Pretty Fast 相當快Pretty Slow 相當慢Slow 慢Excellent 非常好Very Good 很好Good 好Fair 常規Poor 粗劣A Cappella 無伴奏合唱曲Acid 酸性Acid Jazz 酸性爵士Acid Punk 酸性朋克Acoustic 聲音學Alternative 另類Alternative Rock 另類搖滾Ambient 氛圍音樂Anime 動漫歌曲Avantgarde 先鋒音樂Bass 貝斯Beat 打擊樂Bebob BebobBig Band Big Band Black Metal 黑色金屬Bluegrass 藍草音樂Blues 藍調Booty Bass 亢奮貝斯BritPop 英式吉他流行樂Cabaret 酒館音樂Celtic 塞爾特Chamber Music 室內樂Chanson 餐館歌舞助興Chorus 合唱Christian Gangsta Rap 基督教黑幫說唱Christian Rap 基督教說唱Christian Rock 基督教搖滾Classic Rock 古典搖滾Classical 古典音樂Club 俱樂部Club-House 俱樂部室内乐Comedy 喜劇Contemporary Christian 當代基督教音樂Country 鄉村音樂Crossover 跨界音樂Cult 异教狂熱Dance 舞曲Dance Hall 舞廳Darkwave 黑潮音樂Death Metal 死亡金屬Disco 迪斯高Dream 夢幻Drum & Bass 鼓和貝司Drum Solo 鼓獨奏Duet 二重奏Easy Listening 輕音樂Electronic 電子Ethnic 世界音樂Euro-House 歐洲室内乐Euro-Techno 歐洲數字樂Eurodance 歐洲舞曲Fast Fusion 快速融合Folk 民謠Folklore 民俗音樂Freestyle 自由風格Funk 瘋克Fusion 融合Game 游戲Gangsta 黑幫Goa Goa Gospel 福音音樂Gothic 哥特式Gothic Rock 哥德搖滾Grunge 垃圾搖滾Hard Rock 硬式搖滾Hardcore 硬核Heavy Metal 重金屬Hip-Hop Hip-Hop House 室内乐Humour 幽默Indie 獨立流行Industrial 工業Instrumental 樂器Instrumental Pop 器樂流行Instrumental Rock 器樂搖滾Jazz 爵士樂Jazz+Funk 爵士+瘋克Jpop 流行爵士Jungle 叢林Latin 拉丁Lo-Fi 低保真Meditative 冥想音樂Merengue 美倫格舞曲Metal 金屬Musical 音樂劇National Folk 國家民謠Native American 美國原生音樂Negerpunk 黑人龐克New Age 新世紀New Wave 新浪潮Noise 噪音Oldies 老歌Opera 歌劇Other 其他Polka 波爾卡Polsk Punk 波蘭龐克Pop-Folk 流行民謠Pop/Funk 搖滾/芬客Porn Groove 情色音樂Power Ballad 強力情歌Pranks PranksPrimus Primus Progressive Rock 前衛搖滾Psychadelic 迷幻音樂Psychedelic Rock 迷幻搖滾Punk 龐克Punk Rock 龐克搖滾R&B 節奏布魯斯Rap 說唱Rave 銳舞Reggae 雷鬼Retro 怀舊Revival 复興Rhytmic Soul 節奏靈魂樂Rock 搖滾(Rock) Rock & Roll 搖滾(Rock&Roll) Salsa SalsaSamba 桑巴Satire Satire Showtunes Show tunesSka 斯卡Slow Jam Slow JamSlow Rock 慢搖滾Sonata 奏鳴曲Soul 靈魂樂Sound Clip 音效素材Soundtrack 原聲碟Southern Rock 南方搖滾Space 航天Speech 演說Swing 搖擺樂Symphonic Rock 交響搖滾Symphony 交響樂Synthpop 合成器流行樂Tango 探戈Techno 數字Techno-Industrial 數字工業Terror 恐怖Top 40 美國排行榜Trance 冥想Trash Metal 鞭撻金屬Tribal 部落音樂Trip-Hop 迷幻舞曲V ocal 人聲====================================================================== ======================调音台操作术语英汉对照GAIN:输入信号增益控制HIGH:高音电平控制MID-HIGH:中高音电平控制LOW:低音电平控制PAN:相位控制MON.SEND:分路监听信号控制EFX.SEND:分路效果信号控制LIMIT(LED):信号限幅指示灯LEFT.:左路信号电平控制RIGHT:右路信号电平控制MONITOR:监听系统MON.OUT:监听输出MASTER:总路电平控制EFX.MASTER:效果输出电平控制EFX.PAN:效果相位控制EFX.RET:效果返回电平控制EFX.MON:效果送监听系统电平控制DISPLAY:电平指示器ECHO:混响HIGH I IN:高阻输入LOW I IN:低阻输入OUT/IN:输出/输入转换插孔AUX.IN:辅助输入MASTER OUT:总路输出EFX.OUT:效果输出EFX.RETURN:效果返回输入LAMP:专用照明灯电源POWER:总电源开关BALANCE OUTPUT:平衡输出FUSE:保险丝PEL:预监听(试听)按键EFF:效果电平控制MAIN:主要的LEVEL:声道平衡控制HEAD PHONE:耳机插孔PHANTOM POWER:幻像电源开关SIGNAL PROCESSOR:信号处理器EQUALIZER:均衡器SUM:总输出编组开关LOW CUT:低频切除开关HIGH CUT:高频切除开关PHONO INPUT:唱机输入STEREO OUT:立体声输出ACTIVITY:动态指示器CUE:选听开关MONO OUT:单声道输出PROGRAM BALANCE:主输出声像控制MONITOR BALANCE:监听输出声像控制EQ IN(OUT):均衡器接入/退出按键FT SW:脚踏开关REV.CONTOUR:混响轮廓调节PAD:定值衰减,衰减器套曲Cycle一种由多乐章组合而成的大型器乐曲或声乐器组曲Suite由几个具有相对独立性的器乐曲组成的乐曲奏鸣曲Sonata指类似组曲的器乐合奏套曲.自海顿.莫扎特以后,其指由3-4个乐章组成的器乐独奏套曲(钢琴奏鸣曲)或独奏乐器与钢琴合奏的器乐曲(小提琴奏鸣曲)交响曲symphony大型管弦乐套曲,通常含四个乐章.其乐章结构与独奏的奏鸣曲相同协奏曲concerto由一件或多件独奏乐器与管弦乐团相互竞奏,并显示其个性及技巧的大型器乐套曲.分独奏协奏曲、大协奏曲、小协奏曲等交响诗symphonic poem单乐章的标题****响音乐音诗poeme单乐章管弦乐曲,与交响诗相类似序曲overture歌剧、清唱剧、舞剧、其他戏剧作品和声乐、器乐套曲的开始曲。
The world’s mosT powerful Gpu NVIdIA® QuAdro® 6000Built on the innovative NVIDIA Fermi architecture, Quadro professional-class solutions are the first to integrate high performance computing capabilitieswith advanced visualization techniques, transforming modern workflows. Featuring a new Scalable Geometry Engine™, Quadro 6000 can deliver up to an unheard of 1.3 billion triangles per second, shattering previous 3D performance benchmarks.1 Modern applications harness the latest NVIDIA® CUDA™ parallel processing architecture of Quadro GPU to deliver performance gains up to 8x faster compared to previous generations when running computationally intensive applications such as ray tracing, video processing and computational fluid dynamics. For high-precision, data sensitive applications, Quadro GPUs are the only professional graphics solution with ECC memory and fast double precision capabilities to ensurethe accuracy and fidelity of your results.From medical imaging to structural analysisapplications, data integrity and precision isassured, without sacrificing performance.Quadro 6000 is not only a graphicsprocessor; it’s an entire visualsupercomputing platform, incorporatinghardware and software that enablesadvanced capabilities such as stereoscopic3D, scalable visualization and 3D high-definition broadcasting. The result is a visualsupercomputer right at your desk, capableof changing the way you work every day.produCT speCIfICATIoNsCUDA PARAllElPROCESSING CORES>448FRAME BUFFER MEMORy> 6 GB2 GDDR5MEMORy INTERFACE>384-bitMEMORy BANDwIDTH>144 GbpsMAx POwER CONSUMPTION>225 wGRAPHICS BUS>PCI Express 2.0 x16DISPlAy CONNECTORS*>Dual link DVI-I (1), DisplayPort (2)STEREO 3D CONNECTOR>3-pin mini DIN3D VISION PRO SUPPORT>3-pin mini DIN or USBFORM FACTOR> 4.376” H x 9.75” l /Dual SlotECC MEMORy>yesFAST DOUBlE PRECISION>yesNVIDIA SlI TECHNOlOGy>Available on Quadro SlI certifiedplatformsG-SyNC>CompatibleHD SDI CAPTURE/OUTPUT>Compatible*Two out of any three connectors can be active at a timeThe NVIDIA® Quadro® 6000 professional graphics solution is a truetechnological breakthrough, delivering up to 5x faster performance across abroad range of design, animation and video applications.1Raw throughput number calculated by graphics processing clusters, GPU clock rate, and triangle throughput.26GB is supported on win7 and linux64 (4GB memory limit on windows xP64) via Rel 256 driver.QUADRO 6000 | DATASHEET | OCT10To learn more about NVIDIA Quadro, go to /quadro© 2010 NVIDIA Corporation. All rights reserved. NVIDIA, the NVIDIA logo, NVIDIA Quadro, CUDA, GigaThread, Parallel DataCache, 3D Vision, and SlI are trademarks and/or registered trademarks of NVIDIA Corporation. All company and product names are trademarks or registered trademarks of the respective owners with which they are associated. Features, pricing, availability, and specifications are allsubject to change without notice.supporTed plATforms>Support for two operating systems, from a Quadro SlI Multi-OS certified workstation, with each operating system assigned to a dedicated Quadro GPU>Microsoft windows 7 (64-bit and 32-bit) >Microsoft windows Vista (64-bit and 32-bit)>Microsoft windows xP (64-bit and 32-bit)>Microsoft windows 2000 (32-bit)>linux ® - Full OpenGl implementation, complete with NVIDIA and ARB extensions (64-bit and 32-bit) >Solaris ®3d GrAphICs ArChITeCTure>Scalable geometry architecture >Hardware tessellation engine >NVIDIA GigaThread engine with dual copy engines >Shader Model 5.0(OpenGl 4.0 and Directx 11) >Optimized compiler for Cg and Microsoft HlSl>Up to 16K x 16K texture and render processing>Transparent multi-sampling and super sampling >16x angle independent anisotropic filtering>128-bit floating point performance >32-bit per-component floating pointtexture filtering and blending>64x full scene antialiasing (FSAA)/128x FSAA in SlI Mode>Decode acceleration for MPEG-2, MPEG-4 Part 2 Advanced Simple Profile, h.264, MVC, VC1, Divx (version 3.11 and later), and Flash (10.1 and later)>Blu-ray dual stream hardwareacceleration (supporting HD picture-in-picture playback)NVIdIA CudA pArAllelproCessING ArChITeCTure>API support includes: CUDA C, CUDA C++, DirectCompute 5.0, Java, Python and Fortran>NVIDIA Parallel DataCache hierarchy (configurable l1 and unified l2 caches) >64 KB of RAM (configurable partitioning of shared memory and l1 cache) >Full IEEE 754-2008 - 32-bit and high performance 64-bit double precision >Dual warp Scheduler (schedules and dispatches simultaneously instructions from two independent warps)AdVANCed dIsplAy feATures>30-bit color (10-bit per each red, green, blue channel)>Support for any combination of two connected displays>Dual DisplayPort (up to 2560x1600 @ 60Hz and 1920x1200 @ 120Hz)>Dual-link DVI-I output (up to 2560x1600@ 60Hz and 1920x1200 @ 120Hz) >Internal 400MHz DAC DVI-I output(analog display up to 2048x1536 @ 85Hz) >DisplayPort to VGA, DisplayPort to DVI-D (single-link and dual-link) and DisplayPort to HDMI cables (resolution support based on cable specifications) >DisplayPort 1.1a, HDMI 1.3a, and HDCP support>10-bit internal display processing(hardware support for 10-bit scanout for both windowed desktop and full screen, only available on windows and linux with Aero disabled)>NVIDIA ® 3D Vision ™ technology, 3D DlP, Interleaved, and other 3D stereo format support>Full OpenGl quad buffered stereo support>Underscan/overscan compensation and hardware scaling>NVIDIA ® nView ® multi-display technology>NVIDIA ® SlI ® Mosaic TechnologydIsplAyporT ANd hdmI dIGITAl AudIo>Support for the following audio modes: Dolby Digital (AC3), DTS 5.1, Multi-channel (7.1) lPCM, Dolby Digital Plus (DD+), and MPEG-2/MPEG-4 AAC>Data rates of 44.1KHz, 48KHz, 88.2KHz, 96KHz, 176KHz, and 192KHz>word sizes of 16-bit, 20-bit and 24-bitTeChNICAl speCIfICATIoNsNVIdIA ® QuAdro ® 6000。
DatasheetFujitsu BS2000/OSDSQ210 business serverThe powerful mainframefor the entry- and medium performance rangeShort description Array The combination of proven BS2000/OSD functionality with high-end Intel® Xeon® MP processors results in thenew Business Server SQ210, an ideal server to run BS2000/OSD applications economically.The new server generation SQ210 extends the application range of SQ servers through a intensely increasedmonoprocessor performance and an enlarged overall performance range of up to 1750 RPF.OSD Extended Configuration OSD/XC is the BS2000/OSD operating system package for Business Servers in theSQ server line. The Business Servers SQ210 are supported by BS2000 OSD/XC V9.0 which consists of theoperating system BS2000/OSD-BC V9.0 and several system-related software products.VM2000 version V10.0 supports multiple BS2000 guest systems at the SQ210 Server Unit. The SQ210 basesoftware also enables the optional use of Linux and Windows Server® guest systems parallel to BS2000/OSD.Besides these guest systems on the Server Unit, SQ210 also incorporates additional optional Application Unitsto run Linux and WIndows applications native or under VMware vSphere.In order to further increase the availability of SQ210 servers a high-availability configuration with two SQ serversand/or two ETERNUS DX disk storage systems can be set up. Hardware and software components for couplingredundant SQ servers enable the simple and fast relocation of guest systems with the applications they arerunning to a second server. The mutual monitoring of the SQ210 Business Server during operation enablesautomatic restart of monitored guest systems and applications on the backup system if a server fails.Furthermore, it is possible to switch to a mirrored storage system without a lengthy interruption of theapplication if an ETERNUS DX disk storage system fails.The relocation of guest systems and applications can also be performed as a Live Migration (LM). This meansthe relocation of guest systems (BS2000, Linux, Windows) with the applications they are running from one SQ210 server (SU or AU) to a second server during ongoing operation. The user can continue to use the applications during relocation (without a lengthy interruption). Live Migration is supported on SQ210 for guest systems on the server unit and for VMware guest systems on Application Units. A native, running BS2000 system without a VM2000 can also be relocated to a second SQ210 via LM.The browser-based user interface of the SQ Manager is used for the administration of the whole SQ210 Business Server including the control of the high-availability and live-migration functionality. It provides both SQ specific functions and the use of established administration GUIs for guest systems and Application Units.Sixteen models are configured as complete HW/SW packages with all components required to support comfortable and efficient BS2000 operation.In addition to hard disks connected directly to the SQ210 via SAS RAID controller, and a very compact tape cartridge unit for automated backup,, SCALAR i6000) are supported with SQ210.Features and benefits1) The installed physical memory has the double capacity. The second half is used for memory mirroring and isn’t incorporated in these figures.2) Around 70% of memory is available for BS2000 and Linux-/Windows guest systems . Remaining memory is used by SQ210 firmware.Some BS2000 memory is used to accelerate BS2000 applications with the Just in Time translator JIT.Main Memory16 GB to 512 GB, mounted on 4 to 8 memory boardsbuilt of 4 GB-, 8 GB- or 16 GB-DDR3 dimms.Advanced ECC, Memory MirrorDisks, drives and others■4 integrated RAID SAS 2,5’’ system disks with 450 GB each, mirroredin pairs, hot plug■LTO-4 drive■DVD-RW writer■8 hot plug fans (redundant)■4 hot plug power supplies (redundant)Interfaces and onboard controllersI/O Slots *)■4x PCI-Express 2.0 x8,■3x PCI-Express 2.0 x4, (2x ½ length, 1x ¾ length)■1x PCI-Express 2.0 x16■2x PCI-Express x4 (2x half height)■*) One slot is used for the controller of the internal LTO-4 drive Basic server dataManagement and Remote Service Console (MARS)■Intel® Xeon® E5-2620 processor, 6 cores■2x 4 GB main memory (mirrored)■2 integrated RAID SAS 2,5’’ system disks with 300 GB each, mirrored, hot plug■DVD RW writer■6 hot plug fans (redundant)■2 redundant power supplies with 450 W each■Interfaces and controllersSQ210 system rack■19’’ rack with 42 U height and 1050 mm depth,9 U used for components of the SQ210 basic configuration■Alternatively, a basic network (BNET) or an extended network (ENET) for the internal, redundant connection of the SQ210 components.BNET: 2 LAN switches unmanaged (1 Gbit/s, 16 ports)ENET: 2 LAN switches managed (1 Gbit/s, 48 ports);ENET is required for private network connections (PNET) within an SQ server and between two SQ servers, which are required for HA and LM. ENET also enables the configuration of faster, more secure and more redundant network connections for exchanging application data between the SU and AUs of the SQ server.■Keyboard/Video/Mouse switch, analogous, 8 ports■ISDN modem for teleservice (optional),alternative: remote service with AIS Connect■Rack consoleFold-out 17’’ TFT-Monitor,Resolution up to 1280x1024 (SXGA), 32 Bit color depth, Keyboard US/English, TouchpadOptional SQ210 Components(see separate data sheets)■Storage subsystem ETERNUS JX40 (SAS RAID)■Magnetic tape changer ETERNUS LT40 (1 – 2 drives,LTO4/SAS, LTO4/Fibre Channel or LTO5/Fibre Channel)■Online UPS (APC) 5 or 10 KVA with external runtime extensions SQ210 Application Unit (optional)High-End X86-Server■Intel® 7500-chip set■2 - 4 Intel® Xeon® processors of E7 series with 6 to 10 cores■8 – 1024 GB registered DDR3 dimms, ECC,optional Memory-Mirror ■DVD-RW drive■Integrated Remote Management Controller iRMC S2■8 fans, redundant■4 power supplies, redundant■10 PCI express Slots■8 2,5“ Slots for disk drives (SSD, SATA or SAS)■1 5,25“ Slot for back-up drives■Operating system SUSE SLES 11, Windows Server 2008 or 2012, different guests with Vmware vSphereV5.0 or V5.1.Other OS on request, e.g. RHEL, MS Hyper-V or Citrix XenServerSQ210 SAN Integration Package (optional)■Two SAN Switches Brocade 300 with SFPs andFibre Channel cables, connecting the Server Unit and all Application Units with the switches■Installation into SQ210-Rack■Configuration using Gateway-Modus■StorMan software to display and configure external disk systems connected with SQ210Technical data of the switches: see data sheet of Brocade 300.SQ210 High Availability and Live Migration (optional)■Configurable switchover from guest systems of the server unit (except for BS2000-Monitor-VM) and the Application Unit to a replacement system - automatically if a server fails or manually, e.g. for maintenance or load transfer.Relocation of a native operated OSD/XC system to a second SQ server is also possible.■Depending on the configuration, an application restart is performed by the user using automatic start-up scripts, or manually.■Automatic switchover to a mirror system is also offered in case the primary storage system fails. If both system components fail, a common storage and server switchover can be started manually.■Live Migration for interrupt-free maintenance/updating for hardware and firmware or in order to adapt the load to the resources of two servers in ongoing operation.■Administration of the HA / LM function (inclusion / removal of guest systems in HA monitoring, HA/LM implementation, information functions) takes place in the SQ Manager.■Prerequisites for HA: Two SQ200 or SQ210 servers with an extended internal ENET network and with the same peripherals as well as the software package HAPS,where necessary VM2000 V10.0 for the BS2000 guest systems of the server unit,where necessary VMware Vspere V5.0 or V5.1 for the guest systems of the Application Unit.■If only one SQ210 server is available, BS2000 systems and applications can be switched to a second storage system using ENET and the software HAPST.■Live Migration has the same requirements as HA, but always requires two SQ210 Business Servers.BS2000, cannot be used under OSD/XC V4.1 and VM2000 V9.5.Installation dataBusiness Server SQ210SQ210 System Cabinet 1)Width (transport width) 700 (800) mmDepth (transport depth) 1050 (1200) mmHeight (transport height) 2003 (2150) mmMaintenance area front: 900 mmrear: 800 mmside (left/right): 800 mm each sideWeight 2)as of ca. 250 kg (depending on system configuration)Rated voltage 230 VOptional power connections two 1-phase connections with blue CEE plug 16A orone 3-phase connection CEE 3x16A orone 1-phase connection CEE 16A and one 1-phase permanentconnection 32 A (for UPS)Additional connections may be required for extension components in theSQ rack.Power cable length Power cable, 4 m longFrequency 50/60 HzPower consumption, max. 2)1350 – 1700 VA (load-dependent)Heat generation, max. 2)4900 – 6200 kJ/h (load-dependent)Operating temperature 10°C to 35 °CStandards Safety: GS, EN 60950-1, EN 60529 - IP20Compliance: CE class A, FCC class ACB, RoHS, WEEE1)Data on optional SQ210 extensions and additional storage components which can be integrated in the SQ210 cabinet are available indifferent data sheets2)These data include SQ210-160F with all components of the basic configuration(Server unit, MARS, rack console, console switch, LAN switch)Application UnitWeight Up to 46 kg, depending on the configurationRated voltage 230 VOptional power connections two 1-phase connections with blue CEE plug 16A orone 3-phase connection CEE 3x16A orone 1-phase connection CEE 16A and one 1-phase permanentconnection 32 A (for UPS)Frequency 50/60 HzPower consumption, max. 1790 WHeat generation, max. 6444 kJ/hOperating temperature 10°C to 35 °CStandards GSCE Class AIn addition to Fujitsu BS2000/OSD, Fujitsu provides a range of platform solutions. They combine reliable Fujitsu products with the best in services, know-how and worldwide partnerships.Dynamic InfrastructuresWith the Fujitsu Dynamic Infrastructures approach, Fujitsu offers a full portfolio of IT products, solutions and services, ranging from clients to datacenter solutions,Managed Infrastructure and Infrastructure as a Service. How much you benefit from Fujitsu technologies and services depends on the level of cooperation you choose. This takes IT flexibility and efficiency to the next level.Computing products/global/services/computing/ ■ PRIMERGY: Industrial standard server ■ SPARC Enterprise: UNIX server■ PRIMEQUEST: Mission-critical IA server ■ ETERNUS: Storage system ■ BS2000/OSD mainframesSoftware/software/■ Interstage: Application infrastructure software■Systemwalker: System management softwareLearn more about Fujitsu BS2000/OSD SQ210 business server, please contact your Fujitsu sales representative, or visit our website./fts/products/computi ng/servers/bs2000/business/sq210/index.ht mlFujitsu Green Policy Innovation is ourworldwide project for reducing burdens on the environment. Using our global know-how, we aim to resolve issues ofenvironmental energy efficiency through IT. Please find further information at:/global/about/environ ment/© Copyright 2012 Fujitsu Technolgy Solutions GmbHFujitsu and the Fujitsu logo are trademarks or registered trademarks of Fujitsu Limited in Japan and other countries.Other company, product and service names may be trademarks or registered trademarks of their respective owners.Technical data subject to modification and delivery subject to availability. Any liability that the data and illustrations are complete, actual or correct is excluded. Designations may be trademarks and/or copyrights of the respective manufacturer, the use of which by third parties for their own purposes may infringe the rights of such owner.More informationE-mail: ***********************.com Website: /bs2000 2013-07-10 EM EN。
简单事情变复杂英语作文Title: Making Simple Things Complicated。
We live in a world where simplicity is often overlooked and things are made more complicated than they need to be. From everyday tasks to complex problems, people have a tendency to overthink and complicate things unnecessarily. In this essay, we will explore the reasons why simple things become complicated and how we can strive for simplicity in our lives.One of the main reasons why simple things become complicated is the human tendency to overanalyze and overcomplicate situations. Instead of taking a straightforward approach to solving a problem, people often get caught up in the details and make things more complex than they need to be. This can lead to confusion, frustration, and a lack of progress.Another reason for the complexity of simple things isthe influence of external factors such as societal norms, peer pressure, and expectations. People may feel the need to conform to certain standards or meet certain expectations, which can lead to unnecessary complicationsin their lives. For example, a simple decision like choosing a career path can become complicated when influenced by societal pressures and expectations.Furthermore, the fear of making mistakes or facing failure can also contribute to the complexity of simple things. People may overthink and overanalyze a situation in an attempt to avoid making a wrong decision or facing negative consequences. This fear can paralyze individuals and prevent them from taking a straightforward approach to solving problems.In order to strive for simplicity in our lives, it is important to recognize the factors that contribute to the complexity of simple things. By understanding the reasons behind overcomplicating situations, we can take steps to simplify our lives and approach problems in a more straightforward manner.One way to simplify our lives is to practice mindfulness and focus on the present moment. By being mindful of our thoughts and actions, we can avoid getting caught up in unnecessary details and overthinking. This can help us approach problems with a clear mind and make decisions more efficiently.Another way to strive for simplicity is to prioritize and focus on what truly matters. By identifying our core values and priorities, we can avoid getting bogged down by trivial matters and focus on what is important to us. This can help us make decisions more effectively and avoid unnecessary complications in our lives.Additionally, seeking support and guidance from others can help us simplify our lives. By seeking advice from trusted friends, family members, or mentors, we can gain new perspectives and insights that can help us approach problems in a more straightforward manner. This can help us avoid overcomplicating situations and make decisions with more clarity.In conclusion, it is important to recognize the reasons why simple things become complicated and strive for simplicity in our lives. By understanding the factors that contribute to overcomplicating situations, practicing mindfulness, prioritizing what truly matters, and seeking support from others, we can approach problems in a more straightforward manner and avoid unnecessary complications. Ultimately, simplicity can lead to a more balanced and fulfilling life.。
复杂的操作流程英语作文Title: A Complex Operation Process。
In today's fast-paced world, complex operation processes are becoming more and more common in various industries. These processes require careful planning, precise execution, and effective communication among team members. In this essay, we will explore a complex operation process in the manufacturing industry and discuss the challenges and strategies for successful implementation.The complex operation process we will be focusing on is the production of a new electronic device. This process involves multiple steps, including product design, component sourcing, manufacturing, quality control, and distribution. Each step requires coordination among different departments and external suppliers to ensure the final product meets the quality standards and timelines.The first step in the operation process is productdesign. This involves collaboration between the engineering and design teams to create a detailed blueprint of the electronic device. The design must take into account the technical specifications, user requirements, and market trends. Any changes to the design must be communicated effectively to all team members to avoid delays in the production process.Once the design is finalized, the next step is component sourcing. This involves identifying and procuring the necessary components from various suppliers. The procurement team must ensure that the components meet the quality standards and are delivered on time. Any delays in component sourcing can disrupt the entire production schedule, leading to cost overruns and missed deadlines.After the components are sourced, the manufacturing process begins. This involves assembling the components, testing the electronic device for functionality and quality, and packaging the final product. The manufacturing teammust work efficiently to meet the production targets and maintain the quality standards. Regular communicationbetween the manufacturing team and other departments is crucial to address any issues that may arise during the production process.Quality control is another critical step in the operation process. This involves inspecting the electronic device at various stages of production to ensure that it meets the quality standards. Any defects or deviations from the specifications must be addressed immediately to prevent the production of faulty products. The quality control team must work closely with the manufacturing team to implement corrective actions and prevent future issues.Once the electronic device is manufactured and passes the quality control tests, it is ready for distribution. This involves packaging the product, preparing it for shipment, and delivering it to the customers. The distribution team must coordinate with logistics providers to ensure timely delivery and track the shipments to prevent any delays or losses.In conclusion, a complex operation process like theproduction of a new electronic device requires careful planning, precise execution, and effective communication among team members. By following the steps outlined in this essay and addressing the challenges that may arise, companies can successfully implement complex operation processes and deliver high-quality products to the market.。
精简流程提高效率英语When it's about streamlining processes and boosting efficiency, it's crucial to get straight to the point.There's no need for complicated steps or unnecessary delays. Simple is often the best route to take.One way to make a process more efficient is to identify and eliminate bottlenecks. Those are the little things that slow you down and keep you from moving forward. Once you spot them, it's like removing a roadblock and suddenly, things start flowing smoothly.Communication is also key. A lot of time is wasted when people aren't on the same page. Clear, concise instructions and regular updates can save hours of confusion and wasted effort.Another trick is to automate whatever you can. Technology is a powerful tool that can take care ofrepetitive tasks, freeing up your time to focus on moreimportant things.And don't forget to delegate. You can't do everything yourself, and trying to will only lead to burnout. Trust your team and give them the responsibility to handle their own tasks.Lastly, be flexible. Things don't always go according to plan, and that's okay. Being able to adapt and change course quickly is a skill that will help you stay ahead in today's fast-paced world.So, there you have it. Simple steps to make your processes more efficient. No fancy tricks or complicated strategies. Just get to the point, eliminate bottlenecks, communicate clearly, automate what you can, delegate, and be flexible. It'。
Package‘reservoirnet’April4,2023Type PackageTitle Reservoir Computing and Echo State NetworksVersion0.2.0Date2023-03-13SystemRequirements Python(>=3.7)Description A simple user-friendly library based on the'python'module'reservoirpy'.It provides aflexible interface to implement efficient ReservoirComputing(RC)architectures with a particular focus on Echo State Networks(ESN).Some of its features are:offline and online training,parallel implementation,sparse matrix computation,fast spectral initialization,advanced learningrules(e.g.Intrinsic Plasticity)etc.It also makes possible to easily createcomplex architectures with multiple reservoirs(e.g.deep reservoirs),readouts,and complex feedback loops.Moreover,graphical tools are included to easilyexplore hyperparameters.Finally,it includes several tutorials exploringtime series forecasting,classification and hyperparameter tuning.For more informationabout'reservoirpy',please see Trouvain et al.(2020)<doi:10.1007/978-3-030-61616-8_40>.This package was developed in the framework of the University of Bordeaux’s IdEx``Investments for the Future''program/RRI PHDS.Config/reticulate list(packages=list(list(package=``reservoirpy'',pip=TRUE)))License GPL(>=3)Repository CRANURL https:///reservoirpyDepends R(>=3.6)RoxygenNote7.2.3Encoding UTF-8Imports reticulate,testthat(>=3.0.0),rlang,ggplot2,ggpubr,janitor,dplyr,magrittr,methodsSuggests rmarkdown,knitr,covr,kableExtra,slider,tibble,tidyrConfig/testthat/edition3VignetteBuilder knitr1Language en-USNeedsCompilation noAuthor Thomas Ferte[aut,cre,trl],Kalidou Ba[aut,trl],Nathan Trouvain[aut],Rodolphe Thiebaut[aut],Xavier Hinaut[aut],Boris Hejblum[aut,trl]Maintainer Thomas Ferte<**************************>Date/Publication2023-04-0411:40:02UTCR topics documented:createNode (2)dfCovid (4)generate_data (5)install_reservoirpy (6)link (7)plot.reservoir_predict_seq (8)plot_2x2_perf (9)plot_marginal_perf (10)plot_perf_22 (10)predict_seq (11)print.summary.reservoirR_fit (12)random_search_hyperparam (13)reservoirR_fit (14)rloguniform (15)summary.reservoirR_fit (15)summary.reservoir_predict_seq (16)%>>% (17)Index18 createNode Function to create some nodeDescriptionFunction to create some nodeUsagecreateNode(nodeType=c("Ridge"),units=NULL,lr=1,sr=NULL,otputDim=NULL,inputDim=NULL,name=NULL,ridge=0,inputBias=TRUE,input_scaling=TRUE,input_connectivity=0.1,rc_connectivity=0.1,activation="tanh",dtype="float64",seed=NULL,...)ArgumentsnodeType Type of node.Default is"Ridge".units(int)optional Number of reservoir units.If None,the number of units will be infered from the W matrix shape.lr(float)default to1.0Neurons leak rate.Must be in:math:[0,1].sr(float)optional Spectral radius of recurrent weight matrix.otputDim Output dimension of the Node.Dimension of its state.inputDim Input dimension of the Node.name Name of the Node.It must be a unique identifier.ridgefloat,default to0.0.L2regularization parameter.inputBias bool,default to TRUE.If TRUE,then a bias parameter will be learned along with output weights.input_scalingfloat or array-like of shapes(features),default to1.0.Input gain.An array of the same dimension as the inputs can be used to set up different input scaling foreach feature.input_connectivityfloat,default to0.1.Connectivity of input neurons,i.e.ratio of input neuronsconnected to reservoir neurons.Must be between0and1.rc_connectivityfloat,default to0.1.Connectivity of recurrent weight matrix,i.e.ratio of reser-voir neurons connected to other reservoir neurons,including themselves.Mustbe between0and1.activation str’tanh’.Reservoir units activation function.Should be a activationsfunc func-tion name(’tanh’,’identity’,’sigmoid’,’relu’,’softmax’,’softplus’).4dfCoviddtype Numerical type for node parametersseed set random seed...Others paramsValueA node generated by reservoirpy python module.Examplesif(interactive()){readout<-reservoirnet::createNode("Ridge")}dfCovid Datagouv covid-19datasetDescriptionA dataset containing the data from datagouv.fr concerning covid-19infections in Aquitaine.Datarelated to hospitalizations can be found at Santépublique France-Data downloaded at https://www.data.gouv.fr/fr/datasets/r/0 6780-452d-9b8c-ae244ad529b3,update from26/01/2023.Data related to RT-PCR can be found atSantépublique France-Data downloaded at https://www.data.gouv.fr/fr/datasets/r/10639654-3864-48ac-b024-d772c218c4c1,update from26/01/2023.Usagedata(dfCovid)FormatA data frame with962rows and4variablesDetails•date.The date•hosp.Number of person hospitalized with SARS-CoV-2in Aquitaine.•Positive.Number of person with a positive RT-PCR in Aquitaine.•Tested.Number of person with a RT-PCR in Aquitaine.generate_data5 generate_data Load data from the Japanese vowels or the Mackey-GlassDescriptionMackey-Glass time series[8]_[9]_,computed from the Mackey-Glass delayed differential equa-tion:Usagegenerate_data(dataset=c("japanese_vowels","mackey_glass","both"),one_hot_encode=TRUE,repeat_targets=FALSE,reload=FALSE,n_timesteps,tau=17,a=0.2,b=0.1,n=10,x0=1.2,h=1)Argumentsdataset(String)take value in array[japanese_vowels,mackey_glass]one_hot_encode(bool),default to True.If True,returns class label as a one-hot encoded vector.repeat_targets(bool),default to False.If True,repeat the target label or vector along the time axis of the corresponding sample.reload(bool),default to False If True,re-download data from remote repository.Else, if a cached version of the dataset exists,use the cached dataset.n_timesteps(int)Number of time steps to compute.tau(int),default to17Time delay:math:‘\tau‘of Mackey-Glass equation.By de-faults,equals to17.Other values can change the choatic behaviour of the time-series.a(float)default to0.2:math:‘a‘parameter of the equation.b(float)default to0.1:math:‘b‘parameter of the equation.n(int)default to10:math:‘n‘parameter of the equation.x0(float),optional,default to1.2Initial condition of the timeseries.h(float),default to1.0Time delta between two discrete timesteps.Valuearray of shape(n_timesteps,1)Mackey-Glass timeseries.6install_reservoirpy Examplesif(interactive()){japanese_vowels<-generate_data(dataset="japanese_vowels")timeSerie<-generate_data(dataset="mackey_glass",n_timesteps=2500)res=generate_data(dataset<-"both",n_timesteps=2500)}install_reservoirpy Install reservoirpyDescriptionInstall reservoirpyUsageinstall_reservoirpy(envname="r-reticulate",method="auto")Argumentsenvname str name of environment.Default is R-reticulatemethod str type of environment type(virtualenv,conda).Default is auto(virtualenv is not available on Windows)ValueA NULL object after installing reservoirpy python module.Examples##Not run:reservoirnet::install_reservoirpy()##End(Not run)link7link Link two:py:class:~.Node instances to form a:py:class:~.Model in-stance.node1output will be used as input for node2in the createdmodel.This is similar to a function composition operation:DescriptionLink two:py:class:~.Node instances to form a:py:class:~.Model instance.node1output will be used as input for node2in the created model.This is similar to a function composition operation:Usagelink(node1,node2,name=NULL)Argumentsnode1(Node)or(list_of_Node)Nodes or lists of nodes to link.node2(Node)or(list_of_Node)Nodes or lists of nodes to link.name(str)optional Name for the chaining Model.DetailsCan update the state of the node several timesValueA reservoir model linking node1and node2.Examplesif(reticulate::py_module_available("reservoirpy")){reservoir<-reservoirnet::createNode(nodeType="Reservoir",seed=1,units=100,lr=0.7,sr=1,input_scaling=1)readout<-reservoirnet::createNode(nodeType="Ridge",ridge=0.1)model<-reservoirnet::link(reservoir,readout)}8plot.reservoir_predict_seq plot.reservoir_predict_seqplot.reservoir_predict_seqDescriptionplot.reservoir_predict_seqUsage##S3method for class reservoir_predict_seqplot(x,...,vec_nodes=c(1:20),vec_time=NULL)Argumentsx A reservoir_predict_seq object...deprecatedvec_nodes Number of nodes to plotvec_time Time to plotValueA ggplotExamplesif(reticulate::py_module_available("reservoirpy")){reservoir<-reservoirnet::createNode(nodeType="Reservoir",seed=1,units=100,lr=0.7,sr=1,input_scaling=1)X<-matrix(data=rnorm(100),ncol=4)reservoir_state_stand<-reservoirnet::predict_seq(node=reservoir,X=X)plot(reservoir_state_stand)summary(reservoir_state_stand)}plot_2x2_perf9 plot_2x2_perf plot_2x2_perfDescriptionPlot2x2combinations of the hyperparameters.Usageplot_2x2_perf(dfPerf,perf_lab="Median relative error",legend_position="bottom",trans="log10")ArgumentsdfPerf The performance dataframe which should have the columns:perf,ridge,in-put_scaling,leaking_rate,spectral_radius.Where perf is the performance met-ricperf_lab The label of the performance metric.legend_positionPosition of legend passed to ggarrangetrans The transformation(default is"log10")ValueA mutliple2x2plots.ExamplesdfPerf<-data.frame(perf=runif(n=10),ridge=runif(n=10),input_scaling=runif(n=10),leaking_rate=runif(n=10))reservoirnet::plot_2x2_perf(dfPerf=dfPerf)10plot_perf_22 plot_marginal_perf plot_marginal_perfDescriptionget marginal performance from dfPerfUsageplot_marginal_perf(dfPerf,color_cut=10,perf_lab="Median relative error")ArgumentsdfPerf The performance dataframe which should have the columns:perf,ridge,in-put_scaling,leaking_rate,spectral_radius.Where perf is the performance met-riccolor_cut The cutting point to highlight best values(default=10)perf_lab The label of the performance metric.ValueA plot with4facetsExamplesdfPerf<-data.frame(perf=runif(n=10),ridge=runif(n=10),input_scaling=runif(n=10),leaking_rate=runif(n=10))reservoirnet::plot_marginal_perf(dfPerf=dfPerf,color_cut=2)plot_perf_22plot_perf_22DescriptionUnit plot for2x2functionUsageplot_perf_22(x,y,dfPerf,perf_lab,trans="log10")predict_seq11Argumentsx The x featurey The y featuredfPerf The performance dataframe which should have the columns:perf,ridge,in-put_scaling,leaking_rate,spectral_radius.Where perf is the performance met-ricperf_lab The label of the performance metric.trans The transformation(default is"log10")ValueA2x2plotExamplesdfPerf<-data.frame(perf=runif(n=10),ridge=runif(n=10),input_scaling=runif(n=10),leaking_rate=runif(n=10))reservoirnet::plot_perf_22(dfPerf=dfPerf,x="ridge",y="input_scaling",perf_lab="MSE")predict_seq Run the node-forward function on a sequence of dataDescriptionRun the node-forward function on a sequence of dataUsagepredict_seq(node,X,formState=NULL,stateful=TRUE,reset=FALSE) Argumentsnode nodeX array-like of shape([n_inputs],timesteps,input_dim)A sequence of data of shape(timesteps,features).12print.summary.reservoirR_fit formState array of shape(1,output_dim),optional Node state value to use at begining of computation.stateful bool,default to TRUE If True,Node state will be updated by this operation.reset bool,default to FALSE If True,Node state will be reset to zero before this oper-ation.DetailsCan update the state of the node several timesValueAn object of class reservoir_predict_seq.This object is a numeric vector containing the matrix of the prediction of the reservoir.It is either the forecast of the ridge layer or the node state of the reservoir if no ridge layer is given.Examplesif(reticulate::py_module_available("reservoirpy")){reservoir<-reservoirnet::createNode(nodeType="Reservoir",seed=1,units=100,lr=0.7,sr=1,input_scaling=1)X<-matrix(data=rnorm(100),ncol=4)reservoir_state_stand<-reservoirnet::predict_seq(node=reservoir,X=X)plot(reservoir_state_stand)summary(reservoir_state_stand)}print.summary.reservoirR_fitreservoirR_fit print summaryDescriptionprint S3method for summary.reservoirR_fit objectUsage##S3method for class summary.reservoirR_fitprint(x,...)random_search_hyperparam13 Argumentsx an object of class summary.reservoirR_fit to print....further arguments.ValueA NULL object which shows the model setting to perform the reservoirfit.Examplesif(reticulate::py_module_available("reservoirpy")){}random_search_hyperparamrandom_search_hyperparamDescriptionGenerate a hyperparameter simulation table using functions as input.Usagerandom_search_hyperparam(n=100,ls_fct=list(ridge=function(n)1e-05,input_scaling=function(n)1,spectral_radius =function(n)rloguniform(n=n,min=0.01,max=10),leaking_rate=function(n)rloguniform(n=n,min=0.001,max=1)))Argumentsn Number of searchls_fct A list of functionsValueA dataframe of size n x4.Each row is a different set of hyperparameters.14reservoirR_fitExamplesrandom_search_hyperparam(n=100,ls_fct=list(ridge=function(n)1e-5,input_scaling=function(n)1,spectral_radius=function(n)rloguniform(n=n,min=1e-2,max=10),leaking_rate=function(n)rloguniform(n=n,min=1e-3,max=1)))reservoirR_fit Offlinefitting method of a NodeDescriptionOfflinefitting method of a NodeUsagereservoirR_fit(node,X,Y,warmup=0,stateful=FALSE,reset=FALSE) Argumentsnode nodeX array-like of shape[n_inputs],[series],timesteps,input_dim),op-tional Input sequences dataset.If None,the method will try tofit the param-eters of the Node using the precomputed values returned by previous call of:py:meth:partial_fit.Y array-like of shape([series],timesteps,output_dim),optional Teacher signals dataset.If None,the method will try tofit the parameters of the Node us-ing the precomputed values returned by previous call of:py:meth:partial_fit,or tofit the Node in an unsupervised way,if possible.warmup:int,default to0Number of timesteps to consider as warmup and discard at the begining of each timeseries before training.stateful is boolenreset is boolean.Should the node status be reset beforefitting.ValueAfitted reservoir of class reservoiR_fit containing thefitted model.rloguniform15Examplesif(reticulate::py_module_available("reservoirpy")){}rloguniform rloguniformDescriptionSimulate a log-uniform distributionUsagerloguniform(n,min=10^-1,max=10^2)Argumentsn number of samplemin minimum of the distributionmax maximum of the distributionValueA vector of simulated valuesExamplesrloguniform(n=1)summary.reservoirR_fitreservoirR_fit summaryDescriptionsummary S3method for reservoirR_fit objectUsage##S3method for class reservoirR_fitsummary(object,...)16summary.reservoir_predict_seqArgumentsobject an object of class reservoirR_fit to summarized....further arguments.Valuea list objectExamplesif(reticulate::py_module_available("reservoirpy")){}summary.reservoir_predict_seqsummary.reservoir_predict_seqDescriptionsummary.reservoir_predict_seqUsage##S3method for class reservoir_predict_seqsummary(object,...)Argumentsobject A reservoir_predict_seq object...Additional argument(unused)ValueA dataframe with node activationExamplesif(reticulate::py_module_available("reservoirpy")){reservoir<-reservoirnet::createNode(nodeType="Reservoir",seed=1,units=100,lr=0.7,sr=1,input_scaling=1)X<-matrix(data=rnorm(100),ncol=4)reservoir_state_stand<-reservoirnet::predict_seq(node=reservoir,X=X)plot(reservoir_state_stand)%>>%17 summary(reservoir_state_stand)}%>>%Takes two nodes and applies python operator>>DescriptionA port of the>>"chevron"operator from reservoirpy.Usagenode1%>>%node2Argumentsnode1a Node or a list of Nodesnode2a Node or a list of NodesValueA node or a list of nodes.Examplesif(interactive()){source<-reservoirnet::createNode("Input")reservoir<-reservoirnet::createNode("Reservoir",units=100,lr=0.1,sr=0.9)source%>>%reservoirreadout<-reservoirnet::createNode("Ridge")list(source%>>%reservoir,source)%>>%readout}Index∗datasetsdfCovid,4%>>%,17chevron(%>>%),17createNode,2dfCovid,4generate_data,5install_reservoirpy,6link,7plot.reservoir_predict_seq,8plot_2x2_perf,9plot_marginal_perf,10plot_perf_22,10predict_seq,11print.summary.reservoirR_fit,12random_search_hyperparam,13reservoirR_fit,14rloguniform,15summary.reservoir_predict_seq,16 summary.reservoirR_fit,1518。