自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 Scalasca性能测试工具集教程,含scorep,cube

Scalasca是一个工具集,包括插桩工具Score-P, 后处理工具Cube等.scorep插桩, skin过时了, 官方建议直接使用scorep命令进行插桩.需在编译器前加scorep命令编译源码,如要变成,实际操作比较灵活, 如可改变Makefile文件中CXX等环境变量为,也可以直接使用Score-p封装的command,如scorep-g++进行编译,或者使用等等.scorep默认自动插桩每一个函数的入口和出口,包括MPI函数.

2024-11-07 10:21:22 751 2

原创 C++智能指针详解

智能指针如std::shared_ptr通过引用计数自动管理内存,避免内存泄漏。make_shared高效创建,只需一次内存分配。智能指针简化线程安全操作,内部计数更新通常原子,减少同步需求。

2024-04-29 20:08:25 257

原创 并发量增加时常见的三个问题

并发量增加时,Linux系统可能遇到三个问题:文件描述符限制(Too many open files)、端口分配问题(Cannot assign requested address)和连接跟踪限制(客户端连接数量上不去)。解决这些问题的方法包括临时或永久提高文件描述符限制,调整本地端口范围,以及增加系统跟踪的连接数上限。

2024-04-29 00:21:21 258

原创 C10K问题及常见的解决方案

本文探讨了解决C10K问题的多种网络编程模型,包括阻塞I/O配合多进程或多线程、线程池、非阻塞I/O结合事件通知以及Reactor模式。重点强调了非阻塞I/O与事件驱动模型的重要性,以及如何通过这些技术高效处理大量并发连接。同时,讨论了随着并发量增加,系统资源如文件句柄和内存的瓶颈问题,以及如何通过优化和模型选择来缓解这些瓶颈。

2024-04-29 00:18:44 1044

原创 网络小工具

本文介绍了Linux系统中的一些常用网络工具及其用法:netstat: 查看网络连接和端口使用情况,如netstat -lntp查看TCP监听端口。lsof: 查找使用特定IP或端口的进程,如lsof -i :8080。nmap: 端口扫描工具,如nmap ip -p port。strace: 追踪进程的系统调用。telnet: 远程登录客户端,如telnet ip port测试服务。nc: 模拟服务器和客户端,进行端口连接和数据传输。tcpdump: 强大的抓包工具,如tcpdump -i

2024-04-29 00:12:10 978

原创 五种io模型

五种I/O模型包括阻塞I/O、非阻塞I/O、I/O多路复用、信号驱动I/O和异步I/O。阻塞I/O在数据未准备好时会等待,而非阻塞I/O会立即返回错误。I/O多路复用如select、poll和epoll允许同时监控多个I/O操作,提高并发效率。信号驱动I/O和异步I/O则在数据准备好时通过信号或回调通知应用。这些模型在用户态和内核态之间交互,影响着系统调用的效率和资源使用。

2024-04-29 00:10:35 237 1

原创 socket编程模型

这篇文章是关于socket网络编程的全面介绍,涵盖了TCP/IP协议中的基本概念,如IP地址、端口号、大端小端以及网络字节序。文章详细讲解了TCP服务器和客户端的创建、绑定、监听、三次握手连接过程,以及数据的读写和连接的关闭。此外,还探讨了多线程和多进程模型,以及IO多路复用技术,包括select、poll和epoll,这些技术允许服务器端单线程处理多个客户端连接。最后,文章通过伪代码展示了如何利用这些技术构建高效的网络服务器。

2024-04-29 00:08:24 1147

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除