Ubuntu 12.04 LTS图形界面下的Docker多线程与多核编程实战

需积分: 7 27 下载量 142 浏览量 更新于2024-08-09 收藏 5.76MB PDF 举报
本资源是一份关于LTS(长期支持版本)图形界面下的多线程与多核编程指南,特别针对Ubuntu 12.04桌面环境进行了说明。文章详细介绍了Docker的相关知识,Docker是一个流行的容器化平台,它使得开发者能够轻松打包应用及其依赖项到一个可移植的容器中运行,极大地提高了软件部署的效率和一致性。 首先,章节1.1至1.16涵盖了Docker的基础概念,如: 1. Docker简介:简述了Docker的用途和优势,包括为什么在IT行业中选择使用Docker进行应用程序的管理和部署。 2. 基本概念: - 镜像(Image):Docker的核心,是容器的模板,包含了运行所需的所有依赖和配置。 - 容器(Container):由镜像创建的运行实例,每个容器都是独立且隔离的,可以在不同的主机上复用镜像。 3. 安装Docker:提供了针对Ubuntu、Debian和CentOS等操作系统安装Docker的方法,并提及了macOS的安装步骤。 4. Dockerfile指令详解:这是构建自定义Docker镜像的重要部分,包括COPY和ADD用于复制文件,CMD和ENTRYPOINT设置启动命令,以及ENV和ARG用于设置环境变量和构建参数。 5. 后续章节深入探讨了其他关键概念和操作,如镜像加速器、卷管理、网络配置、数据卷、容器的生命周期管理、外部访问、数据备份与恢复等,确保了用户对Docker的全面理解。 6. 最后,文章还列出了参考文档和快速配置指南,为读者提供进一步学习和实践的路径。 在整个教程中,作者不仅介绍了如何在图形界面下利用多线程和多核编程,还结合了Docker技术,让读者能够在处理复杂应用时充分利用系统资源,提升开发和部署的效率。这是一份既实用又全面的IT教程,适合希望深入了解Docker并在Linux环境中进行高效开发的读者。

for Itr=1:Max_Itr for i=1:nop % Determin RSs and Search by LTs %-------------------------------------------------------- Rf=((i-1)/(nop-1))(RM-Rm)+Rm; Rd=norm(GOP-GTs(:,RKs(i))); Rs=Rf(Rf>=Rd)+Rd*(Rd>Rf); LTs_C=Create_LTs(No_LTs,Rs,Dim); LTs=repmat(GTs(:,RKs(i)),1,No_LTs)+LTs_C; LTs=SS(LTs,Par_Interval); %---------------- if Graphic_on==1 subplot(2,2,1) hold off pause(0.000001); plot(LTs(1,:),LTs(2,:),'x'); hold on ezplot(['(x-' num2str(GTs(1,RKs(i))) ')^2 + (y-' num2str(GTs(2,RKs(i))) ')^2 -' num2str(Rs^2)],[0 10],[0 10]); hold off xlim([Par_Interval(1,1) Par_Interval(1,2)]); ylim([Par_Interval(2,1) Par_Interval(2,2)]); pbaspect([1 1 1]) title('Local Search') xlabel('x_1') ylabel('x_2') end %---------------- LTs_Cost=Ev_Fcn(LTs,Fcn_Name); [L_min,L_inx]= min(LTs_Cost); if L_min<=LP_Cost(RKs(i)) LP(:,RKs(i))=LTs(:,L_inx); LP_Cost(RKs(i))=L_min; end if L_min<=GOP_Cost GOP_Cost=L_min; GOP=LTs(:,L_inx); end end % Search by GTs %-------------------------------------------------------- for i=1:nop GTs(:,i)=New_GT(GTs(:,i),LP(:,i),GOP,Lambda,Theta,Beta); GTs(:,i)=SS(GTs(:,i),Par_Interval); GTs_Cost(i)=Ev_Fcn(GTs(:,i),Fcn_Name); end % Ranking %-------------------------------------------------------- [Gts_Sorted,RKs]=sort(GTs_Cost); GOP_B=GTs(:,RKs(1)); GOP_Cost_B=Gts_Sorted(1); if GOP_Cost_B<=GOP_Cost GOP_Cost=GOP_Cost_B; GOP=GOP_B; end OP_Cost(Itr+1)=GOP_Cost; %---------------- if Graphic_on==1 subplot(2,2,2) hold off pause(.000001) plot(GTs(1,:),GTs(2,:),'*') hold on plot(GOP(1,:),GOP(2,:),'X','color','red') xlim([Par_Interval(1,1) Par_Interval(1,2)]); ylim([Par_Interval(2,1) Par_Interval(2,2)]); hold off pbaspect([1 1 1]*3) title('Global Search') xlabel('x_1') ylabel('x_2') end %---------------- %---------------- if Graphic_on==1 subplot(2,2,3) hold off pause(.000001) plot(OP_Cost(1:Itr+1)) pbaspect([2 1 1]) xlim([1 Max_Itr+1]) title(['Cost=' num2str(GOP_Cost,'%4.10f')]) xlabel('Iteration') ylabel('Cost') else hold off pause(.000001) plot(0:Itr,OP_Cost(1:Itr+1),'.','MarkerSize',15,'LineStyle','-','Color',[214 30 0]/255,'MarkerEdgeColor',[3 93 118]/255) pbaspect([2 1 1]) title(['Itr=' num2str(Itr) ', Cost=' num2str(GOP_Cost,'%4.10f')]) xlim([0 Max_Itr]) xlabel('Iteration') ylabel('Cost') end %---------------- end 把这段MATLAB代码转换为python代码

2023-06-01 上传