- 深度学习工厂的蓝图:拆解CUDA驱动、PyTorch与OpenCV的依赖关系
时光旅人01号
深度学习pytorchopencv
想象一下,你正在建造一座深度学习工厂,这座工厂专门用于高效处理深度学习任务(如训练神经网络)和计算机视觉任务(如图像处理)。为了让工厂顺利运转,你需要搭建基础设施、安装设备、设置生产线,并配备控制台来管理整个生产过程。以下是这座工厂的详细构建过程:1.工厂的基础设施:Ubuntu比喻:Ubuntu是工厂所在的土地和建筑,提供了基础设施和运行环境。作用:提供操作系统环境,支持安装和运行各种工具和框架
- 【CUDA】Pytorch_Extensions
joker D888
深度学习pytorchpythoncudac++深度学习
【CUDA】Pytorch_Extensions为什么要开发CUDA扩展?当我们在PyTorch中实现自定义算子时,通常有两种选择:使用纯Python实现(简单但效率低)使用C++/CUDA扩展(高效但需要编译)对于计算密集型的操作(如神经网络中的自定义激活函数),使用CUDA扩展可以获得接近硬件极限的性能。本文将以实现一个多项式激活函数x²+x+1为例,展示完整的开发流程。完整CUDA扩展代码解
- 本地搭建小型 DeepSeek 并进行微调
非著名架构师
大模型知识文档智能硬件人工智能大数据大模型deepseek
本文将指导您在本地搭建一个小型的DeepSeek模型,并进行微调,以处理您的特定数据。1.环境准备Python3.7或更高版本PyTorch1.8或更高版本CUDA(可选,用于GPU加速)Git2.克隆DeepSeek仓库bash复制gitclonehttps://github.com/deepseek-ai/deepseek.gitcddeepseek3.安装依赖bash复制pipinstall
- Transformer 模型架构
2401_89793006
热门话题transformer深度学习人工智能
Transformer是一种模型架构(ModelArchitecture),而不是一个软件框架(Framework)。它的定位更接近于一种设计蓝图,类似于建筑中的结构设计方案。以下是详细解释:1.架构vs框架的区别概念定义示例模型架构定义神经网络的结构设计Transformer、CNN、RNN开发框架提供实现模型的工具和库PyTorch、TensorFlow2.Transformer作为架构的核心
- auto-gptq安装以及不适配软硬件环境可能出现的问题及解决方式
IT修炼家
大模型部署大模型auto-gptqcuda
目录1、auto-gptq是什么?2、auto-gptq安装3、auto-gptq不正确安装可能会出现的问题(1)爆出:`CUDAextensionnotinstalled.`(2)没有报错但是推理速度超级慢1、auto-gptq是什么?Auto-GPTQ是一种专注于量化深度学习模型的工具库。它的主要目标是通过量化技术(Quantization)将大型语言模型(LLM)等深度学习模型的大小和计算复
- 基于python深度学习遥感影像地物分类与目标识别、分割实践技术应用
xiao5kou4chang6kai4
深度学习遥感勘测python深度学习分类
专题一:深度学习发展与机器学习深度学习的历史发展过程机器学习,深度学习等任务的基本处理流程梯度下降算法讲解不同初始化,学习率对梯度下降算法的实例分析从机器学习到深度学习算法专题二深度卷积网络、卷积神经网络、卷积运算的基本原理池化操作,全连接层,以及分类器的作用BP反向传播算法的理解一个简单CNN模型代码理解特征图,卷积核可视化分析专题三TensorFlow与keras介绍与入门TensorFlow
- 如果MLlib 中没有所需要的模型,如何使用 Spark 进行分布式训练?
是纯一呀
WSLDockerAIspark分布式mllib
如果MLlib中没有你所需要的模型,并且不打算结合更强大的框架(如TensorFlowOnSpark或Horovod),仍然可以使用Spark进行分布式训练,但需要手动处理训练任务的分配、数据准备、模型训练、结果合并和模型更新等过程。模型训练阶段将模型的训练任务分配到Spark集群的各个节点。数据并行:每个节点会处理数据的不同部分,并计算该部分的梯度或模型参数。自定义算法:如果使用的是自定义算法(
- 用 TensorFlow 搭建简单的手写数字识别模型
lozhyf
工作面试学习tensorflow人工智能python
一、引言手写数字识别是机器学习领域中一个经典且基础的问题,它在很多实际场景中都有广泛的应用,比如邮政系统中的邮件分拣、银行支票金额识别等。TensorFlow是一个强大的开源机器学习框架,由Google开发并维护,它提供了丰富的工具和接口,能帮助我们快速搭建和训练深度学习模型。在这篇博客中,我们将使用TensorFlow构建一个简单的神经网络模型,用于识别手写数字。二、环境准备在开始之前,你需要安
- TensorFlow LiteRT 概览
姚家湾
tensorflow人工智能python
LiteRT(简称LiteRuntime,以前称为TensorFlowLite)是Google面向设备端AI的高性能运行时。您可以找到适用于各种机器学习/AI任务的LiteRT就绪模型,也可以使用AIEdge转换和优化工具将TensorFlow、PyTorch和JAX模型转换为TFLite格式并运行。主要特性针对设备端机器学习进行了优化:LiteRT解决了五项关键的ODML约束条件:延迟时间(无需
- 深入浅出:CUDA是什么,如何利用它进行高效并行计算
码上飞扬
CUDA
在当今这个数据驱动的时代,计算能力的需求日益增加,特别是在深度学习、科学计算和图像处理等领域。为了满足这些需求,NVIDIA推出了CUDA(ComputeUnifiedDeviceArchitecture),这是一种并行计算平台和编程模型。本文将带你全面了解CUDA的基本概念、工作原理及其应用场景。一、什么是CUDA?CUDA(ComputeUnifiedDeviceArchitecture)是由
- python中的深度学习框架TensorFlow 和 PyTorch 有什么区别?
大懒猫软件
python深度学习tensorflowpytorch
TensorFlow和PyTorch是目前最流行的两个深度学习框架,它们在设计理念、使用方式和社区支持等方面存在一些显著的区别。以下是它们的主要区别:1.设计理念TensorFlow:静态计算图:TensorFlow使用静态计算图,即在运行模型之前需要先定义整个计算图。这使得TensorFlow在大规模分布式训练和部署时具有优势,但调试和动态修改模型时可能不够灵活。功能全面:TensorFlow提
- flash_atten库安装失败
心平气和不要慌
python开发语言
在使用tinyllava时,需要安装flash_atten库,直接pipinstallflash_atten安装出现无法安装且安装速度慢的情况,下面是解决方案。1.查询对应版本(cuda,python等),直接下载对应whl文件。地址:https://github.com/Dao-AILab/flash-attention/releases?page=52.安装,这里我选择abiFALSE版本的才
- flash-attention安装教程
深度求索者
深度学习人工智能
flash-attention不仅能加快速度,还可以节省显存。安装方法如下:首先搞清楚你的python什么版本,torch什么版本,cuda什么版本,操作系统是什么。例如我下载的是:flash_attn-2.7.0.post2+cu12torch2.3cxx11abiTRUE-cp310-cp310-linux_x86_64.whl我的操作系统是Linux,Python3.10,cuda12,to
- PyTorch与TensorFlow的对比:哪个框架更适合你的项目?
木觞清
pytorchtensorflow人工智能
在机器学习和深度学习领域,PyTorch和TensorFlow是最流行的两个框架。它们各有特点,适用于不同的开发需求和场景。本文将详细对比这两个框架,帮助你根据项目需求选择最合适的工具。一、概述PyTorch和TensorFlow都是深度学习框架,它们为构建、训练和部署神经网络提供了强大的工具。尽管它们的最终目标相同,但其设计哲学和实现方式有所不同。PyTorch:由Facebook的人工智能研究
- QT+FFmpeg如何使用GPU加速解码?
bug菌¹
全栈Bug调优(实战版)qtffmpeg开发语言c++
本文收录于《全栈Bug调优(实战版)》专栏,主要记录项目实战过程中所遇到的Bug或因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!全文目录:问题描述解决方案1.确保FFmpeg和CUDA的支持2.正确选择硬件解码器设置硬件解码器3.初始化CUDA硬件设备4.硬件解码流程解码帧并处理硬件帧5.检查FF
- 快速在Ubuntu18.04系统中离线部署深度学习环境
高次超静定的人
pythondockerubuntu
快速在Ubuntu18.04系统中离线部署深度学习环境本文部署的环境前提为电脑上新装的Ubuntu18.04并且没有联网,一切所需的软件均通过离线包安装,旨在模拟实际项目部署中的过程,文章中提及的资源文件在文章最底部,不包含镜像,根据自己的需要去拉取镜像即可。一、服务器部署流程1、安装显卡驱动cuda、cudnn#安装gcc和makecd~/dockerDeploy/pool&&sudo./ins
- anaconda,Python,cuda,pytorch 下载安装
三希
pythonpytorch开发语言
以下是Anaconda、Python、CUDA和PyTorch的下载安装步骤:一、Anaconda下载访问Anaconda官方网站:DownloadAnacondaDistribution|Anaconda。根据您的操作系统(Windows、macOS或Linux)选择合适的版本进行下载。例如,对于Windows系统,选择对应的.exe安装文件。安装Windows:双击下载的.exe文件。按照安装
- CUDA学习——Chapter 3(1)流式多处理器(SM)介绍
KarK_Li
CUDACUDAC并行计算
第三章上一章我们讨论了不同内存布局对核函数性能的影响,这一章我们就从硬件的角度,去探究为什么布局会导致核函数运行的不同。SM简介上一节我们说到deviceProp的时候,不知道会不会有读者有疑惑,为什么突然会提到multiprocessor(多处理器)这个概念,这个概念又是什么?其实这个multiprocessor,就是我们这一篇推文要介绍的SM。先来给大家看看SM的结构:这是Fermi架构下的S
- cuda编程入门——并行归约(五)
我不会打代码啊啊
cuda编程算法c++gpu算力
CUDA编程入门—并行归约(数组求和为例)在并行计算中,归约(Reduction)是一种将多个数据通过特定操作(如求和、求最大值等)合并为单一结果的并行算法。其核心目标是通过并行化加速大规模数据集的聚合计算。关键概念操作类型:可结合且可交换的操作(如加法、乘法、最大值、最小值、逻辑与/或等)适合并行归约。若操作不可结合(如减法或除法),需特殊处理或无法直接并行化。并行实现方式:树形结构归约:将数据
- 利用cuda加速图像处理—实现sobel边缘检测
我不会打代码啊啊
cuda编程图像处理计算机视觉opencvc++gpu算力
利用cuda加速图像处理—实现sobel边缘检测#include#include#includeusingnamespacecv;/***@brief对图像进行Sobel滤波*@paraminput输入图像*@paramoutput输出图像*@paramwidth图像宽度*@paramheight图像高度*@returnvoid*@note该函数使用CUDA进行加速*@note该函数使用Sobel
- cuda编程入门——并行性与异构性概念
我不会打代码啊啊
cuda编程gpu算力c++
CUDA编程入门一基于cuda的异构并行计算并行性一、并行性的概念与分类概念并行性旨在通过同时处理多个任务或数据元素来提高计算速度和效率。它可以在不同的层次上实现,包括指令级并行、数据级并行和任务级并行等。分类指令级并行(Instruction-LevelParallelism,ILP):在处理器的指令执行层面,通过硬件技术(如流水线、超标量技术等)让多条指令在不同阶段同时执行,从而提高处理器的指
- conda更换环境版本(比如torch版本)
挨打且不服66
pythonpython
找到想要的torch版本pytorch官网torch过往的版本创建新环境condacreate--namemyenvpython=3.8condaactivatemyenvconda虚拟环境中安装CUDA和CUDNN深度学习用显卡训练的时候,需要安装与显卡对应的cuda和cudnn。但不同的项目所支持的pytorch版本是不一样的,而pytorch版本和cuda版本之间又是互相依赖的,所以如果可以
- Fatal error in launcher: Unable to create process报错
萧若珮
笔记
完整报错是这样的:Fatalerrorinlauncher:Unabletocreateprocessusing'"c:\jenkins\workspace\deepview-python_2.5.14\python\python.exe""D:\software\eIQ\python\Scripts\pip.exe"showtensorflow':???????????查资料可以知道这种情况出现
- Docker安装分布式vLLM
MasonYyp
docker分布式容器
Docker安装分布式vLLM1介绍vLLM是一个快速且易于使用的LLM推理和服务库,适合用于生产环境。单主机部署会遇到显存不足的问题,因此需要分布式部署。分布式安装方法https://docs.vllm.ai/en/latest/serving/distributed_serving.html2安装方法⚠️注意:前期一定要把docker环境、运行时和GPU安装好。CUDAVersion:12.4
- 判断是否安装了cuda和cuDNN
幽殇默
pytorch深度学习人工智能
#判断是否安装了cudaimporttorchprint(torch.cuda.is_available())#返回True则说明已经安装了cuda#判断是否安装了cuDNNfromtorch.backendsimportcudnnprint(cudnn.is_available())#返回True则说明已经安装了cuDNN
- [C#]C#使用yolov8的目标检测tensorrt模型+bytetrack实现目标追踪
FL1623863129
深度学习c#YOLO目标检测
【测试通过环境】win10x64vs2019cuda11.7+cudnn8.8.0TensorRT-8.6.1.6opencvsharp==4.9.0.NETFramework4.7.2NVIDIAGeForceRTX2070Super版本和上述环境版本不一样的需要重新编译TensorRtExtern.dll,TensorRtExtern源码地址:TensorRT-CSharp-API/src/T
- 深入理解TensorFlow中的形状处理函数
SEVEN-YEARS
tensorflow人工智能python
摘要在深度学习模型的构建过程中,张量(Tensor)的形状管理是一项至关重要的任务。特别是在使用TensorFlow等框架时,确保张量的形状符合预期是保证模型正确运行的基础。本文将详细介绍几个常用的形状处理函数,包括get_shape_list、reshape_to_matrix、reshape_from_matrix和assert_rank,并通过具体的代码示例来展示它们的使用方法。1.引言在深
- 深度学习框架探秘|TensorFlow vs PyTorch:AI 框架的巅峰对决
紫雾凌寒
智启前沿:AI洞察・创未来人工智能深度学习tensorflowpytorchai
在深度学习框架中,TensorFlow和PyTorch无疑是两大明星框架。前面两篇文章我们分别介绍了TensorFlow(点击查看)和PyTorch(点击查看)。它们引领着AI开发的潮流,吸引着无数开发者投身其中。但这两大框架究竟谁更胜一筹?是TensorFlow的全面与稳健,还是PyTorch的灵活与便捷?让我们一同深入剖析,探寻答案。在深度学习框架中,TensorFlow和PyTorch无疑是
- 【Stable Diffusion部署至GNU/Linux】安装流程
星星点点洲
stablediffusion
以下是安装StableDiffusion的步骤,以Ubuntu22.04LTS为例子。显卡与计算架构介绍CUDA是NVIDIAGPU的专用并行计算架构技术层级说明CUDAToolkit提供GPU编译器(nvcc)、数学库(cuBLAS)等开发工具cuDNN深度神经网络加速库(需单独下载)GPU驱动包含CUDADriver(需与CUDAToolkit版本匹配)CUDA与NIDIA:硬件指令集绑定:N
- 【vLLM 学习】安装
vLLM是一款专为大语言模型推理加速而设计的框架,实现了KV缓存内存几乎零浪费,解决了内存管理瓶颈问题。更多vLLM中文文档及教程可访问→https://vllm.hyper.ai/vLLM是一个Python库,包含预编译的C++和CUDA(12.1)二进制文件。依赖环境操作系统:LinuxPython:3.8-3.12GPU:计算能力7.0或更高(例如V100、T4、RTX20xx、A100、L
- 戴尔笔记本win8系统改装win7系统
sophia天雪
win7戴尔改装系统win8
戴尔win8 系统改装win7 系统详述
第一步:使用U盘制作虚拟光驱:
1)下载安装UltraISO:注册码可以在网上搜索。
2)启动UltraISO,点击“文件”—》“打开”按钮,打开已经准备好的ISO镜像文
- BeanUtils.copyProperties使用笔记
bylijinnan
java
BeanUtils.copyProperties VS PropertyUtils.copyProperties
两者最大的区别是:
BeanUtils.copyProperties会进行类型转换,而PropertyUtils.copyProperties不会。
既然进行了类型转换,那BeanUtils.copyProperties的速度比不上PropertyUtils.copyProp
- MyEclipse中文乱码问题
0624chenhong
MyEclipse
一、设置新建常见文件的默认编码格式,也就是文件保存的格式。
在不对MyEclipse进行设置的时候,默认保存文件的编码,一般跟简体中文操作系统(如windows2000,windowsXP)的编码一致,即GBK。
在简体中文系统下,ANSI 编码代表 GBK编码;在日文操作系统下,ANSI 编码代表 JIS 编码。
Window-->Preferences-->General -
- 发送邮件
不懂事的小屁孩
send email
import org.apache.commons.mail.EmailAttachment;
import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.HtmlEmail;
import org.apache.commons.mail.MultiPartEmail;
- 动画合集
换个号韩国红果果
htmlcss
动画 指一种样式变为另一种样式 keyframes应当始终定义0 100 过程
1 transition 制作鼠标滑过图片时的放大效果
css
.wrap{
width: 340px;height: 340px;
position: absolute;
top: 30%;
left: 20%;
overflow: hidden;
bor
- 网络最常见的攻击方式竟然是SQL注入
蓝儿唯美
sql注入
NTT研究表明,尽管SQL注入(SQLi)型攻击记录详尽且为人熟知,但目前网络应用程序仍然是SQLi攻击的重灾区。
信息安全和风险管理公司NTTCom Security发布的《2015全球智能威胁风险报告》表明,目前黑客攻击网络应用程序方式中最流行的,要数SQLi攻击。报告对去年发生的60亿攻击 行为进行分析,指出SQLi攻击是最常见的网络应用程序攻击方式。全球网络应用程序攻击中,SQLi攻击占
- java笔记2
a-john
java
类的封装:
1,java中,对象就是一个封装体。封装是把对象的属性和服务结合成一个独立的的单位。并尽可能隐藏对象的内部细节(尤其是私有数据)
2,目的:使对象以外的部分不能随意存取对象的内部数据(如属性),从而使软件错误能够局部化,减少差错和排错的难度。
3,简单来说,“隐藏属性、方法或实现细节的过程”称为——封装。
4,封装的特性:
4.1设置
- [Andengine]Error:can't creat bitmap form path “gfx/xxx.xxx”
aijuans
学习Android遇到的错误
最开始遇到这个错误是很早以前了,以前也没注意,只当是一个不理解的bug,因为所有的texture,textureregion都没有问题,但是就是提示错误。
昨天和美工要图片,本来是要背景透明的png格式,可是她却给了我一个jpg的。说明了之后她说没法改,因为没有png这个保存选项。
我就看了一下,和她要了psd的文件,还好我有一点
- 自己写的一个繁体到简体的转换程序
asialee
java转换繁体filter简体
今天调研一个任务,基于java的filter实现繁体到简体的转换,于是写了一个demo,给各位博友奉上,欢迎批评指正。
实现的思路是重载request的调取参数的几个方法,然后做下转换。
- android意图和意图监听器技术
百合不是茶
android显示意图隐式意图意图监听器
Intent是在activity之间传递数据;Intent的传递分为显示传递和隐式传递
显式意图:调用Intent.setComponent() 或 Intent.setClassName() 或 Intent.setClass()方法明确指定了组件名的Intent为显式意图,显式意图明确指定了Intent应该传递给哪个组件。
隐式意图;不指明调用的名称,根据设
- spring3中新增的@value注解
bijian1013
javaspring@Value
在spring 3.0中,可以通过使用@value,对一些如xxx.properties文件中的文件,进行键值对的注入,例子如下:
1.首先在applicationContext.xml中加入:
<beans xmlns="http://www.springframework.
- Jboss启用CXF日志
sunjing
logjbossCXF
1. 在standalone.xml配置文件中添加system-properties:
<system-properties> <property name="org.apache.cxf.logging.enabled" value=&
- 【Hadoop三】Centos7_x86_64部署Hadoop集群之编译Hadoop源代码
bit1129
centos
编译必需的软件
Firebugs3.0.0
Maven3.2.3
Ant
JDK1.7.0_67
protobuf-2.5.0
Hadoop 2.5.2源码包
Firebugs3.0.0
http://sourceforge.jp/projects/sfnet_findbug
- struts2验证框架的使用和扩展
白糖_
框架xmlbeanstruts正则表达式
struts2能够对前台提交的表单数据进行输入有效性校验,通常有两种方式:
1、在Action类中通过validatexx方法验证,这种方式很简单,在此不再赘述;
2、通过编写xx-validation.xml文件执行表单验证,当用户提交表单请求后,struts会优先执行xml文件,如果校验不通过是不会让请求访问指定action的。
本文介绍一下struts2通过xml文件进行校验的方法并说
- 记录-感悟
braveCS
感悟
再翻翻以前写的感悟,有时会发现自己很幼稚,也会让自己找回初心。
2015-1-11 1. 能在工作之余学习感兴趣的东西已经很幸福了;
2. 要改变自己,不能这样一直在原来区域,要突破安全区舒适区,才能提高自己,往好的方面发展;
3. 多反省多思考;要会用工具,而不是变成工具的奴隶;
4. 一天内集中一个定长时间段看最新资讯和偏流式博
- 编程之美-数组中最长递增子序列
bylijinnan
编程之美
import java.util.Arrays;
import java.util.Random;
public class LongestAccendingSubSequence {
/**
* 编程之美 数组中最长递增子序列
* 书上的解法容易理解
* 另一方法书上没有提到的是,可以将数组排序(由小到大)得到新的数组,
* 然后求排序后的数组与原数
- 读书笔记5
chengxuyuancsdn
重复提交struts2的token验证
1、重复提交
2、struts2的token验证
3、用response返回xml时的注意
1、重复提交
(1)应用场景
(1-1)点击提交按钮两次。
(1-2)使用浏览器后退按钮重复之前的操作,导致重复提交表单。
(1-3)刷新页面
(1-4)使用浏览器历史记录重复提交表单。
(1-5)浏览器重复的 HTTP 请求。
(2)解决方法
(2-1)禁掉提交按钮
(2-2)
- [时空与探索]全球联合进行第二次费城实验的可能性
comsci
二次世界大战前后,由爱因斯坦参加的一次在海军舰艇上进行的物理学实验 -费城实验
至今给我们大家留下很多迷团.....
关于费城实验的详细过程,大家可以在网络上搜索一下,我这里就不详细描述了
在这里,我的意思是,现在
- easy connect 之 ORA-12154: TNS: 无法解析指定的连接标识符
daizj
oracleORA-12154
用easy connect连接出现“tns无法解析指定的连接标示符”的错误,如下:
C:\Users\Administrator>sqlplus username/
[email protected]:1521/orcl
SQL*Plus: Release 10.2.0.1.0 – Production on 星期一 5月 21 18:16:20 2012
Copyright (c) 198
- 简单排序:归并排序
dieslrae
归并排序
public void mergeSort(int[] array){
int temp = array.length/2;
if(temp == 0){
return;
}
int[] a = new int[temp];
int
- C语言中字符串的\0和空格
dcj3sjt126com
c
\0 为字符串结束符,比如说:
abcd (空格)cdefg;
存入数组时,空格作为一个字符占有一个字节的空间,我们
- 解决Composer国内速度慢的办法
dcj3sjt126com
Composer
用法:
有两种方式启用本镜像服务:
1 将以下配置信息添加到 Composer 的配置文件 config.json 中(系统全局配置)。见“例1”
2 将以下配置信息添加到你的项目的 composer.json 文件中(针对单个项目配置)。见“例2”
为了避免安装包的时候都要执行两次查询,切记要添加禁用 packagist 的设置,如下 1 2 3 4 5
- 高效可伸缩的结果缓存
shuizhaosi888
高效可伸缩的结果缓存
/**
* 要执行的算法,返回结果v
*/
public interface Computable<A, V> {
public V comput(final A arg);
}
/**
* 用于缓存数据
*/
public class Memoizer<A, V> implements Computable<A,
- 三点定位的算法
haoningabc
c算法
三点定位,
已知a,b,c三个顶点的x,y坐标
和三个点都z坐标的距离,la,lb,lc
求z点的坐标
原理就是围绕a,b,c 三个点画圆,三个圆焦点的部分就是所求
但是,由于三个点的距离可能不准,不一定会有结果,
所以是三个圆环的焦点,环的宽度开始为0,没有取到则加1
运行
gcc -lm test.c
test.c代码如下
#include "stdi
- epoll使用详解
jimmee
clinux服务端编程epoll
epoll - I/O event notification facility在linux的网络编程中,很长的时间都在使用select来做事件触发。在linux新的内核中,有了一种替换它的机制,就是epoll。相比于select,epoll最大的好处在于它不会随着监听fd数目的增长而降低效率。因为在内核中的select实现中,它是采用轮询来处理的,轮询的fd数目越多,自然耗时越多。并且,在linu
- Hibernate对Enum的映射的基本使用方法
linzx0212
enumHibernate
枚举
/**
* 性别枚举
*/
public enum Gender {
MALE(0), FEMALE(1), OTHER(2);
private Gender(int i) {
this.i = i;
}
private int i;
public int getI
- 第10章 高级事件(下)
onestopweb
事件
index.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/
- 孙子兵法
roadrunners
孙子兵法
始计第一
孙子曰:
兵者,国之大事,死生之地,存亡之道,不可不察也。
故经之以五事,校之以计,而索其情:一曰道,二曰天,三曰地,四曰将,五
曰法。道者,令民于上同意,可与之死,可与之生,而不危也;天者,阴阳、寒暑
、时制也;地者,远近、险易、广狭、死生也;将者,智、信、仁、勇、严也;法
者,曲制、官道、主用也。凡此五者,将莫不闻,知之者胜,不知之者不胜。故校
之以计,而索其情,曰
- MySQL双向复制
tomcat_oracle
mysql
本文包括:
主机配置
从机配置
建立主-从复制
建立双向复制
背景
按照以下简单的步骤:
参考一下:
在机器A配置主机(192.168.1.30)
在机器B配置从机(192.168.1.29)
我们可以使用下面的步骤来实现这一点
步骤1:机器A设置主机
在主机中打开配置文件 ,
- zoj 3822 Domination(dp)
阿尔萨斯
Mina
题目链接:zoj 3822 Domination
题目大意:给定一个N∗M的棋盘,每次任选一个位置放置一枚棋子,直到每行每列上都至少有一枚棋子,问放置棋子个数的期望。
解题思路:大白书上概率那一张有一道类似的题目,但是因为时间比较久了,还是稍微想了一下。dp[i][j][k]表示i行j列上均有至少一枚棋子,并且消耗k步的概率(k≤i∗j),因为放置在i+1~n上等价与放在i+1行上,同理