华为云用户手册
-
性能测试三:功耗测试 功耗测试是通过运行单算子模型来检测整卡的功耗信息。功耗测试的可用参数说明见表7。 ascend-dmi -p -h 表7 功耗测试参数说明 参数 说明 是否必填 [-p, --power] 使用该参数进行整卡的功耗测试。 是 [-t, --type] 指定算子运算类型,可以为fp16或int8,如果未指定则默认为fp16。 否 [-pt, --pt, --pressure-type] 使用该参数指定压力测试的类型。 当前支持指定以下2种类型: edp(Estimated Design Power):EDP功耗压力测试。 tdp(Thermal Design Power):TDP功耗压力测试。 支持和--dur、--it、--pm、-q参数一起使用。 不支持和-t参数一起使用。 不指定该参数时默认进行整卡的功耗测试。 否 [-dur, --dur, --duration] 指运行时间,如果不填写运行时间则默认为600。单位为秒,取值范围为[60,604800]。 否 [-it, --it, --interval-times] 指屏幕信息打印刷新的间隔时间,如果不填写间隔时间则默认为5。单位为秒,取值范围为[1, 5]。 否 [--skip-check] 传入此参数时会跳过设备健康状态检查。不传入此参数,默认会进行设备健康状态检查。 否 [-pm, --pm, --print-mode] 屏幕输出的打印模式,如果不填写打印模式则默认为refresh。打印模式: refresh:每次打印清除历史打印信息。 history:打印保存历史信息。说明 refresh模式下,当芯片数量较多时,建议调小字体使得所有结果都在一个屏幕中,否则可能会显示异常,重复打印部分内容。 否 使用示例,以执行时间为60s,信息的打印间隔信息为5s,屏幕的输出模式为清除历史记录为例。 ascend-dmi -p --dur 60--it 5--pm refresh 图3 功耗测试示例 表8 功耗测试回显参数说明 参数 说明 Type 标卡型号 Card 卡ID号 Chip 处理器编号 Name 处理器名称 Type 处理器型号 Chip Name 处理器名称 NPU Count NPU的个数 Power 当前整卡或芯片的实际功耗 Health 处理器健康程度 Temperature 处理器当前温度 Device ID 处理器设备逻辑号 AI Core Usage 处理器AI Core的使用率 Voltage 处理器当前电压 Frequency 处理器当前频率
-
性能测试四:眼图测试 用户使用眼图测试功能对网络进行测试,查询当前信号质量。本功能主要用于查询信号质量的具体数据。判断当前端口信号质量是否正常,请执行signalQuality诊断。在同一NPU内,如果已配置CDR回环,请在解除回环后再执行眼图测试。眼图测试的可用参数说明见表9。 ascend-dmi --sq -h 表9 眼图测试参数说明 参数 说明 是否必填 [-sq, --sq, --signal-quality] 查询NPU上的PCIe、HC CS 和RoCE通信端口的信号质量。 是 [-d, --device] 指定查询的Device ID。指定多个芯片时,使用英文逗号进行分隔。不指定该参数时,默认查询该设备上所有的NPU。 否 [-t --type] 指定通信端口的类型。当前支持HCCS和RoCE,指定多个通信端口的类型时,使用英文逗号进行分隔。如果不指定则将查询RoCE的信号质量。 否 使用示例,查看Device0和Device1的HCCS、RoCE信号质量。 图4 眼图测试示例 表10 HCCS信号质量回显参数说明 参数 说明 type 指定通信端口的类型。 device NPU的逻辑ID。 M*(macro port) 表示macro端口,例如M0、M1分别表示macro的0号、1号端口。 L*(LANE) 表示HCCS链路中的第几条lane,例如L0、L1分别表示第0条和第1条lane。 S(SNR) 表示lane的信噪比。 H(HEH) 表示lane的半眼高。 表11 RoCE信号质量回显参数说明 参数 说明 type 指定通信端口的类型。 device 表示NPU的逻辑ID。 M*(macro port) 表示macro端口,例如M0分别表示maco端口0。 S(SNR) 表示lane的信噪比。 H(HEH) 表示lane的半眼高。 L*(LANE) 表示RoCE链路中的第几条lane,例如L0、L1分别表示第0条和第1条lane。
-
约束限制 仅支持超节点Snt9B23。 压测使用工具Ascend DMI,其不支持在同一个设备里同时开启多个进程来测试性能数据,多进程测试时,可能导致测试结果不准确或者失败等不可预测情况。 性能测试和故障诊断会影响训练或推理业务,执行命令前请确保无业务运行。 为保证返回检测结果的正确性和准确性,请单独执行各个检测命令。 Ascend DMI工具只能对在位的NPU卡进行检查,为保证测试结果的准确性,请先执行npu-smi info命令检查NPU卡是否正常在位。
-
性能测试一:带宽测试 带宽测试主要用于测试总线带宽、内存带宽和总耗时。带宽测试命令的可用参数说明见表3。 ascend-dmi --bw -h 表3 带宽测试参数说明 参数 说明 是否必填 [-bw, --bw, --bandwidth] 使用该参数测试芯片的带宽。支持-bw,但建议使用--bw或--bandwidth。 是 [-t, --type] 指测试数据流向的分类。当使用带宽测试功能时,测试的数据流可以分为以下方向,如果不填写数据流方向则默认返回h2d、d2h、d2d。 三个方向的带宽和总耗时。 h2d:指数据从Host侧内存通过PCIe总线搬移到Device侧内存,测试整体带宽及总耗时。 d2h:指数据从Device侧内存通过PCIe总线搬移到Host侧内存,测试整体带宽及总耗时。 d2d:指数据从Device侧内存搬移到同一Device侧内存(主要是用于测试Device侧的内存带宽),测试整体带宽及总耗时。 p2p:测试指定源头Device到目标Device的传输速率和总耗时。 否 [-s, --size] 指传输数据大小并指定测试结果显示方式。超节点系列产品:d2h/h2d/p2p这3种模式下,最大传输数值为1Byte~4G。 指定-s参数后面必须填写数值指定传输数据的大小,不填写属于错误写法。 在h2d、d2h、d2d以及p2p且指定-ds和-dd场景:指定-s为定长模式;不指定-s为步长模式,传输数据的默认取值范围为2Byte~32M。 否 [-et, --et, --execute-times] 指迭代次数,即内存复制次数。取值范围为[1, 1000],如果不填写,步长模式下复制次数则默认为5,定长模式下复制次数则默认为40。 否 [-d, --device] 指定需要测试带宽的Device ID,Device ID是指昇腾AI处理器的逻辑ID,如果不填写Device ID则默认返回Device 0带宽信息。 否 [-ds, --ds, --device-src] 指定p2p测试的源头Device的ID号。必须与[-dd, --dd, --device-dst]参数成对指定;如果与[-dd, --dd, --device-dst]参数同时不指定时,测试全量的昇腾NPU芯片。 否 [-dd, --dd, --device-dst] 指定p2p测试的目标Device的ID号。必须与[-ds, --ds, --device-src]参数成对指定;如果与[-ds, --ds, --device-src]参数同时不指定时,测试全量的昇腾NPU芯片。 否 [-fmt, --fmt, --format] 指定输出格式,可以为normal或json。如果未指定则默认为normal。 否 [-q, --quiet] 指定该参数时,将不再进行防呆提示,用户将默认允许该操作。 否 使用示例,以测试数据从Device侧传输到同一Device侧的带宽与总耗时为例。 ascend-dmi --bw -t d2d -d 0 图1 带宽测试示例 表4 带宽测试回显参数说明 参数 说明 Host to Device Test 带宽数据流方向。有以下显示可能: Host to Device Test Device to Host Test Device to Device Test Unidirectional Peer to Peer Test Bidirectional Peer to Peer Test Device X : Ascend XXX Device X为当前测试的设备ID,Ascend XXX为处理器类型。0表示源头设备,1表示目标设备。 ID 0→1表示测试Device 0到Device 1的单向P2P带宽。 0↔1表示测试Device 0和Device 1的双向p2p带宽。 Size(Bytes) 传输数据大小,单位为字节。 Execute Times 迭代次数。 Bandwidth(GB/s) 芯片的带宽。 Elapsed Time(us) 总执行时长。
-
性能测试二:算力测试 算力测试通过构造矩阵乘"A(m,k)*B(k,n)"并执行一定次数的方式,根据运算量与执行多次矩阵乘所耗时间来计算整卡或处理器中AI Core的算力值和满算力下实时的功率。算力测试的可用参数说明见表5。 表5 算力测试参数说明 参数 说明 是否必填 [-f, --flops] 使用该参数测试整卡或芯片的算力。 是 [-t, --type] 指定算子运算类型,可以为fp16、fp32、hf32、bf16和int8,如果未指定则默认为fp16。 否 [-d, --device] 指定Device ID,执行该Device ID所在整卡的算力测试,Device ID是指昇腾芯片的逻辑ID,如果不填写Device ID则默认返回Device 0的算力信息。 否 [-et, --et, --execute-times] 指定芯片单个AI Core上运行矩阵乘法的执行次数。 训练场景:如果不填写执行次数则默认为60。训练场景单位为十万,参数范围为[10,80]。 推理场景:如果不填写执行次数则默认为10。推理场景单位为百万,参数范围为[10,80]。 否 使用示例,在Device 7上,执行算子运算类型为int8,执行次数为600万的算力。 ascend-dmi -f -t int8 -d 7 -et 60-q 图2 算力测试示例 表6 算力测试回显参数说明 参数 说明 Device Device ID。 Execute Times 为单个AI Core执行矩阵乘的次数乘以AI Core的个数计算所得。 Duration(ms) 执行多次矩阵乘所耗费的时间。 TFLOPS@FP16 进行算力测试得到的算力值。FP16为指定的算子运行类型。 Power(W) 满算力下的实时功率。
-
约束限制 当前仅支持Ascend Snt9B节点。 创建任务的节点需要安装NodeTaskHub插件, 请在创建任务前确保插件安装完毕,具体参见管理Lite Server AI插件。 同一时间节点上最多同时支持一个压测任务,任务开始后无法中断, 请您规划好任务优先级。 请确保待压测节点无业务运行,压测过程中的命令执行可能导致当前业务中断或异常。 执行压测前需安装Ascend HDK23.0.0及以后的版本的MCU、驱动和固件,预置操作系统已经默认安装,如果是自定义操作系统,也需确保该软件正常安装。 压测任务依赖开发套件包Ascend-docker-runtime,预置操作系统已经默认安装该软件,如果是自定义操作系统,也需确保该软件正常安装。
-
操作步骤 登录 CES 控制台。 创建告警规则模板。 图1 创建告警规则模板 表1 参数说明 属性 建议值 名称 建议以故障等级命名,例如,超节点亚健康。 告警类型 事件 触发规则 选择“自定义创建”。其它参数建议如下: 事件名称:参考Lite Server支持的事件列表,根据事件影响选择需要关注的事件。 告警策略:在5分钟内累计发生4次则只告警一次。注意,不合理的配置可能导致告警过多或响应过慢。 告警级别:重要 创建告警规则。 图2 创建告警规则(类型) 图3 创建告警规则(策略) 图4 创建告警规则(发送通知) 图5 创建告警规则(高级配置) 表2 告警规则参数说明 属性 建议值 名称 建议采用“超节点名称_故障等级”格式,例如“SuperPod_01_亚健康”。 告警类型 事件 事件类型 系统事件 事件来源 弹性云服务器 监控范围 指定资源 监控对象 超节点内所有子节点。单击选择指定资源,搜索超节点名称,勾选所有,单击“确定”。 图6 选择指定资源 触发规则 自定义创建。 告警策略 勾选引用模板,在下拉列表框中选择第2.创建告警规则模板。步创建的告警模板。 发送通知 可选,如果希望以短信、邮件、HTTP、HTTPS等方式收到告警通知,打开此开关。 注意: 消息通知 服务会从短信、邮件、HTTP、HTTPS的使用中收费,具体价格请参考产品价格说明。 通知对象 可选,当允许发送通知时,才会有此选项。建议创建新主题。 图7 设置通知对象 生效时间 可选,当允许发送通知时,才会有此选项。 建议采用默认值。 触发条件 可选,当允许发送通知时,才会有此选项。 建议采用默认值。 归属企业项目 根据实际情况选择。 创建主题(可选) 图8 创建主题 表3 创建主题参数说明 属性 建议值 主题名称 建议为显示名的英文。例如,SuperPod-Sub-Health。 显示名 推送邮件消息时,邮件主题呈现的名称,建议显示故障级别。例如,超节点亚健康。 企业项目 根据实际情况选择。 添加订阅(可选)。创建主题后就可以添加订阅,以收到告警通知。 添加订阅后,终端会收到确认订阅的消息通知,单击订阅确认后,才能收到告警通知。 图9 添加订阅
-
约束限制 当前仅支持Ascend Snt9B节点。 升级驱动固件过程中会导致业务中断,升级前请保证节点内无业务运行,同时升级完毕后需要重启节点生效。 驱动固件升级过程中会同步升级节点内的MCU的配套版本。 如果节点内驱动固件版本为官方维护版本,升级失败支持回滚至节点内驱动固件原始版本,如果节点内驱动固件损坏,或者节点内驱动固件版本为非官方维护版本,会导致查询节点内驱动固件失败,该场景下升级任务仍可下发,但如果升级失败无法回滚,需要联系华为运维工程师处理。 驱动固件与昇腾软件包(CANN/MindSpore等)有兼容性关系,请确保升级后的驱动固件版本与业务中使用的昇腾软件包的兼容性,可参考表1确认组件兼容性。 表1 组件兼容性 CANN版本 配套Ascend HDK版本 CANN 8.0.0 Ascend HDK 24.1.0 Ascend HDK 24.1.RC3 Ascend HDK 24.1.RC2 Ascend HDK 24.1.RC1 Ascend HDK 23.0.0/23.0.X
-
场景描述 节点任务中枢(NodeTaskHub)是深度集成的弹性节点管理插件,为ModelArts Lite Server节点提供批量任务下发与自动化运维能力。支持昇腾软件升级、实时检测、故障诊断等高频操作,降低人工干预风险,保障AI业务流程稳定高效。 Lite Server任务中心提供多种任务模板供用户创建任务,任务下发依赖Lite Server节点中已安装的NodeTaskHub插件。 LIte Server的部分公共镜像中预置了NodeTaskHub插件,在购买LIte Server时可以选择自动安装该插件。如果未安装,可以参考本文手动安装NodeTaskHub插件。
-
约束限制 当前仅支持Ascend Snt9B节点。 创建任务的节点需要安装NodeTaskHub插件, 请在创建任务前确保插件安装完毕,具体参见管理Lite Server AI插件。 同一时间节点上最多同时支持一个诊断任务,任务开始后无法中断, 请您规划好任务优先级。 请确保待诊断节点无业务运行,诊断过程中的命令执行可能导致当前业务中断或异常。 执行诊断前需安装Ascend HDK23.0.0及以后的版本的MCU、驱动和固件,预置操作系统已经默认安装,如果是自定义操作系统,也需确保该软件正常安装。 诊断任务依赖开发套件包Ascend-docker-runtime,预置操作系统已经默认安装该软件,如果是自定义操作系统,也需确保该软件正常安装。
-
Lite Server支持的事件列表 通过对接CES,可以将业务中的重要事件或对云资源的操作事件收集到CES 云监控服务 ,并在事件发生时进行告警。Lite Server支持的事件来源主要是BMS和ECS,NPU涉及的具体事件列表如下,GPU相关事件请参考CES事件监控说明。 表2 表2 Lite Server支持的事件列表 事件来源 命名空间 事件名称 事件ID 事件级别 事件说明 处理建议 事件影响 支持机型 支持版本 BMS/ECS SYS.BMS/SYS.ECS NPU: npu-smi info查询缺少设备 NPUSMICardNotFound 重要 可能是由于昇腾驱动问题或NPU掉卡 联系运维人员协助处理 NPU卡无法正常使用 Snt3P 300IDuo Snt9B Snt9b23 telescope: 2.7.4.3 2.7.5.3 2.7.5.4 2.7.5.9及之后版本 NPU: PCIe链路异常 PCIeErrorFound 重要 lspci显示npu卡处于rev ff状态 联系运维人员协助处理 NPU卡无法正常使用 Snt3P 300IDuo Snt9B Snt9b23 telescope: 2.7.4.3 2.7.5.3 2.7.5.4 2.7.5.9及之后版本 NPU: lspci查询缺少设备 LspciCardNotFound 重要 一般是由于NPU掉卡 联系运维人员协助处理 NPU卡无法正常使用 Snt3P 300IDuo Snt9B Snt9b23 telescope: 2.7.4.3 2.7.5.3 2.7.5.4 2.7.5.9及之后版本 NPU: 温度超过阈值 TemperatureOverUpperLimit 重要 可能是由于DDR颗粒温度过高或过温软件预警 暂停业务,重启系统,查看散热系统,device复位 可能造成过温下电及device丢失 Snt3P 300IDuo Snt9B Snt9b23 telescope: 2.7.4.3 2.7.5.3 2.7.5.4 2.7.5.9及之后版本 NPU: 存在不可纠正ECC错误 UncorrectableEccErrorWarning 重要 NPU卡出现Uncorrectable ECC Error硬件故障 如果业务受到影响,转硬件换卡 业务可能受到影响终止 Snt3P 300IDuo telescope: 2.7.4.3 2.7.5.3 2.7.5.4 2.7.5.9及之后版本 NPU: 需要重启实例 RebootVirtualMachine 提示 当前故障很可能需要重启进行恢复 在收集必要信息后,重启以尝试恢复 重启可能中断客户业务 Snt3P 300IDuo Snt9B Snt9b23 telescope: 2.7.4.3 2.7.5.3 2.7.5.4 2.7.5.9及之后版本 NPU: 需要复位SOC ResetSOC 提示 当前故障很可能需要复位SOC进行恢复 在收集必要信息后,复位SOC以尝试恢复 复位SOC可能中断客户业务 Snt3P 300IDuo Snt9B Snt9b23 telescope: 2.7.4.3 2.7.5.3 2.7.5.4 2.7.5.9及之后版本 NPU: 需要退出AI任务重新执行 RestartAIProcess 提示 当前故障很可能需要客户退出当前的AI任务并尝试重新执行 在收集必要信息后,尝试退出当前AI任务并尝试重新执行 退出当前AI任务以便重新执行 Snt3P 300IDuo Snt9B Snt9b23 telescope: 2.7.4.3 2.7.5.3 2.7.5.4 2.7.5.9及之后版本 NPU: errorcode告警 NPUErrorCodeWarning 重要 这里涵盖了大量重要及以上的NPU错误码,您可以根据这些错误码进一步定位错误原因 对照《黑匣子错误码信息列表》和《健康管理故障定义》进一步定位错误 NPU当前存在故障,可能导致客户业务终止 Snt3P 300IDuo Snt9B Snt9b23 telescope: 2.7.4.3 2.7.5.3 2.7.5.4 2.7.5.9及之后版本 NPU HBM多ECC错误信息 NpuHbmMultiEccInfo 提示 NPU卡存在HBM的ECC错误,此事件上报相应错误信息 这是一个用于辅助其他事件进行判断的事件,无需单独定位处理 这是一个用于辅助其他事件进行判断的事件,无需单独定位处理 Snt9B Snt9b23 telescope: 2.7.5.9及之后版本 GPU: RoCE网卡配置错误 GpuRoceNicConfigIncorrect 重要 GPU: RoCE网卡配置错误 联系运维人员协助处理 机器参数面网络异常,多机任务无法执行 GPU telescope: 2.7.5.9及之后版本 OS出现ReadOnly问题 ReadOnlyFileSystem 严重 文件系统%s只读 请检查磁盘健康状态 无法对文件进行写和操作 - telescope: 2.7.5.3 2.7.5.9及之后版本 NPU:驱动固件不匹配 NpuDriverFirmwareMismatch 重要 NPU驱动固件版本不匹配 请从昇腾官网获取匹配版本重新安装 无法正常使用NPU卡 Snt3P 300IDuo Snt9B Snt9b23 telescope: 2.7.5.3 2.7.5.9及之后版本 NPU:Docker容器环境检测 NpuContainerEnvSystem 重要 Docker不可用 确认docker软件是否正常 无法使用docker软件 - telescope: 2.7.5.3 2.7.5.9及之后版本 重要 容器插件Ascend-Docker-Runtime未安装 安装容器插件Ascend-Docker-Runtime,否则影响容器使用昇腾卡 docker容器无法挂载NPU卡 Snt3P 300IDuo Snt9B Snt9b23 telescope: 2.7.5.3 2.7.5.9及之后版本 重要 操作系统没有开启IP转发功能 请检查/etc/sysctl.conf文件中net.ipv4.ip_forward配置 docker容器无法正常网络通信 - telescope: 2.7.5.3 2.7.5.9及之后版本 重要 容器共享内存过小 共享内存默认为64M,可按需修改。 方式一:修改/etc/docker/daemon.json配置文件default-shm-size字段。 方式二:docker run命令中使用--shm-size参数来设置单个容器的共享内存大小。 分布式训练时共享内存不足导致训练失败 - telescope: 2.7.5.3 2.7.5.9及之后版本 NPU:RoCE网卡down RoCELinkStatusDown 重要 NPU卡 %d RoCE Link状态Down 请检查NPU Roce网口状态 NPU网卡不可用 Snt9B Snt9b23 telescope: 2.7.5.3 2.7.5.9及之后版本 NPU:RoCE网卡健康状态异常 RoCEHealthStatusError 重要 NPU卡 %d RoCE网络健康状态异常 请检查NPU Roce网卡健康状态 NPU网卡不可用 Snt9B Snt9b23 telescope: 2.7.5.3 2.7.5.9及之后版本 NPU:Roce网卡配置文件/etc/hccn.conf不存在 HccnConfNotExisted 重要 Roce网卡配置文件"/etc/hccn.conf"不存在 请检查/etc/hccn.conf网卡配置文件 Roce网卡不可用 Snt9B Snt9b23 telescope: 2.7.5.3 2.7.5.9及之后版本 GPU:GPU基本组件异常 GpuEnvironmentSystem 重要 nvidia-smi命令异常 请检查GPU驱动是否正常 GPU卡驱动不可用 GPU telescope: 2.7.5.3 2.7.5.9及之后版本 重要 nvidia-fabricmanager版本和GPU驱动版本不一致 请检查GPU驱动版本和nvidia-fabricmanager版本 nvidia-fabricmanager无法正常工作,影响GPU的使用 重要 容器插件nvidia-container-toolkit未安装 安装容器插件nvidia-container-toolkit docker无法挂载GPU卡 本地磁盘挂载巡检 MountDiskSystem 重要 /etc/fstab中有无效的UUID 请检查/etc/fstab配置文件中UUID的正确性,否则可能会导致机器重启失败 挂载磁盘错误,导致机器重启异常 - telescope: 2.7.5.3 2.7.5.9及之后版本 GPU:Ant系列机器动态路由配置错误 GpuRouteConfigError 重要 Ant系列机器网卡%s动态路由未配置或配置错误,CMD [ip route]: %s | CMD [ip route show table all]: %s。 请正确配置RoCE网卡路由 NPU网络通信异常 GPU telescope: 2.7.5.3 2.7.5.9及之后版本 NPU:Roce端口未散列配置 RoCEUdpConfigError 重要 RoCE UDP端口未散列配置 请检查NPU RoCE UDP端口配置情况 影响NPU卡通信性能 Snt9B Snt9b23 telescope: 2.7.5.9及之后版本 系统内核自动升级预警 KernelUpgradeWarning 重要 系统内核自动升级预警,旧版本:%s,新版本:%s 系统内核升级可能导致配套AI软件异常,请检查系统更新日志,避免机器重启 可能导致配套AI配套软件不可用 Snt3P 300IDuo Snt9B Snt9b23 telescope: 2.7.5.3 2.7.5.9及之后版本 NPU环境相关命令检测 NpuToolsWarning 重要 hccn_tool不可用 请检查NPU驱动是否正常 无法配置RoCE网卡的IP、网关 Snt9B Snt9b23 telescope: 2.7.5.3 2.7.5.9及之后版本 重要 npu-smi不可用 请检查NPU驱动是否正常 无法正常使用NPU卡 Snt3P 300IDuo Snt9B Snt9b23 telescope: 2.7.5.3 2.7.5.9及之后版本 重要 ascend-dmi不可用 请检查工具包ToolBox是否正常安装 无法使用ascend-dmi进行性能分析 Snt9B Snt9b23 telescope: 2.7.5.3 2.7.5.9及之后版本 NPU: L1交换机端口局部功能失效 NpuL1SwitchPortPartialFunctionFailure 重要 NPU的L1 1520交换机端口局部功能失效 转昇腾和硬件处理 业务可能受到影响终止 Snt9b23 telescope: 2.7.5.9及之后版本 lqdcmi: 2.1.0及之后版本 NPU: L1交换机故障 NpuL1SwitchFault 重要 NPU的L1 1520交换机发生故障 转昇腾和硬件处理 业务可能受到影响终止 Snt9b23 telescope: 2.7.5.9及之后版本 lqdcmi: 2.1.0及之后版本 NPU:RoCE IP地址不匹配 NpuRoceIPAddressMismatch 重要 RoCE网卡的实际IP地址与配置文件hccn.conf中的IP地址不一致 联系运维人员协助处理 机器参数面网络异常,多机任务无法执行 Snt9B Snt9b23 telescope: 2.7.5.9及之后版本 ECS SYS.ECS NPU:RDMA重传超次 NpuRdmaRetxExceed 重要 网络问题(包括端侧和网络侧)导致RDMA重传失败 联系运维人员协助处理 机器参数面网络异常,可能影响多机任务执行 Snt9b23 telescope: 2.7.5.9及之后版本 NPU:RoCE切换备用链路通信 NpuRoceFailoverToBackupLink 重要 RoCE主链路断开,切换到备用链路通信 联系运维人员协助处理 机器参数面网络异常,可能影响多机任务执行 Snt9b23 telescope: 2.7.5.9及之后版本 NPU:通信算子重执行成功 NpuCommOpReExeSucceeded 重要 网络问题导致算子级重执行,重执行成功 系统处于亚健康状态运行,联系运维人员协助处理 系统处于亚健康状态运行,性能可能有所下降 Snt9b23 telescope: 2.7.5.9及之后版本 NPU:通信算子重执行失败 NpuCommOpReExeFailed 重要 网络问题导致算子级重执行,重执行失败 联系运维人员协助处理 参数面网络或超平面网络异常,多机任务无法执行 Snt9b23 telescope: 2.7.5.9及之后版本 GPU:RoCE网卡配置错误 GpuRoceNicConfigIncorrect 重要 GPU的RoCE网卡配置错误 联系运维人员协助处理 机器参数面网络异常,多机任务无法执行 Snt9b23 telescope: 2.7.5.9及之后版本
-
Lite Server监控方案介绍 详细监控方案介绍请参考BMS主机监控概述。除文档所列支持的镜像之外,目前还支持Ubuntu20.04。 监控指标采样周期为1分钟,请勿修改,否则可能导致功能不正常。当前监控指标项已经包含CPU、内存、磁盘、网络。在主机上安装加速卡驱动后,可以自动采集相关指标。 NPU相关指标采集功能运行依赖Linux系统工具lspci,部分事件依赖blkid、grub2-editenv系统工具,请确保这些工具功能正常。 工具名称 检查方法 安装方法 lspci 在shell环境中执行lspci,能够正常查询系统中的PCI设备,示例如下: $ sudo lspci 00:00.0 PCI bridge: Huawei Technologies Co., Ltd. HiSilicon PCIe Root Port with Gen4 (rev 21) 00:08.0 PCI bridge: Huawei Technologies Co., Ltd. HiSilicon PCIe Root Port with Gen4 (rev 21) 00:10.0 PCI bridge: Huawei Technologies Co., Ltd. HiSilicon PCIe Root Port with Gen4 (rev 21) lspci是用于显示PCI设备信息的工具,通常包含在pciutils软件包中。大多数Linux发行版默认安装了这个软件包,所以lspci通常是预装的。如果lspci未安装,可以使用包管理器安装pciutils。 在Debian/Ubuntu系统中: sudo apt-get update sudo apt-get install pciutils 在Red Hat/CentOS/EulerOS系统中: sudo yum install pciutils blkid 在shell环境中执行blkid,能够查询系统中的块设备信息,示例如下: $ sudo blkid /dev/sda1: UUID="123e4567-e89b-12d3-a456-426614174000" TYPE="vfat" PARTUUID="56789abc-def0-1234-5678-9abcd3f2c0a1" /dev/sda2: UUID="a1b2c3d4-e5f6-789a-bcde-f0123456789a" TYPE="swap" PARTUUID="edcba98-7654-3210-fedc-ba9876543210" /dev/sda3: UUID="01234567-89ab-cdef-0123-456789abcdef" TYPE="ext4" PARTUUID="fedcba09-8765-4321-fedc-ba0987654321" blkid是Linux系统中用于显示块设备属性的工具,通常包含在util-linux软件包中。大多数Linux发行版默认安装了这个软件包,所以blkid通常是预装的。如果blkid未安装,可以使用包管理器安装util-linux。 在Debian/Ubuntu系统中: sudo apt-get update sudo apt-get install util-linux 在Red Hat/CentOS/EulerOS系统中: sudo yum install util-linux grub2-editenv(仅Red Hat、CentOS、EulerOS发行版需要) 在shell环境中执行blkid,能够查询系统中的块设备信息,示例如下: 1 2 3 4 $ sudo grub2-editenv list timeout=5default=0saved_entry=Red Hat Enterprise Linux Server, with Linux 4.18.0-305.el8.x86_64 grub2-editenv是GRUB2的一部分,用于管理GRUB环境变量。大多数Linux发行版默认安装了GRUB2,所以grub2-editenv通常是预装的。如果grub2-editenv未安装,可以使用包管理器安装grub2-editenv: 在Debian/Ubuntu系统中: sudo apt-get update sudo apt-get install grub2 在Red Hat/CentOS/EulerOS系统中: sudo yum install grub2
-
安装CES Agent监控插件 通过在ECS或BMS中安装Agent插件,为用户提供服务器的系统级、主动式、细颗粒度监控服务。 当前账户需要给CES授权委托,请参考创建用户并授权使用 云监控 服务。如果在创建Server资源时,开启了“CES主机监控授权”,此处无需重复执行授权操作。 当前还不支持在CES界面直接一键安装监控,需要登录到服务器上执行以下命令安装配置Agent。其它region的安装请参考单台主机下安装Agent。 cd /usr/local && curl -k -O https://obs.cn-north-4.myhuaweicloud.com/uniagent-cn-north-4/script/agent_install.sh && bash agent_install.sh 安装成功的标志如下: 图1 安装成功提示 在CES界面查看具体的监控项,加速卡类的监控项必须在主机安装加速卡驱动后才会有相关指标。 图2 监控界面 至此,监控插件已经安装完成,相关指标的采集可以在UI界面直接查看或者根据指标值配置相关告警。
-
约束限制 监控需要到Agent插件,Agent有严格的资源占用限制,当资源占用超过阈值后出现Agent熔断情况,详细的资源占用说明请参考CES产品文档相关章节:CES Agent性能说明。 通过Ascend-dmi执行NPU压测命令可能会导致丢失部分NPU指标数据。 监控Agent已在Lite Server提供的公共镜像中经过充分测试,如果您使用自己的镜像,建议测试后再部署到生产环境,防止信息错误。
-
使用BMS Go SDK的方式切换操作系统 以下为BMS使用Go语言通过SDK方式切换操作系统的示例代码。 package main import ( "fmt" "os" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" bms "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/bms/v1" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/bms/v1/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/bms/v1/region" ) func main() { // 认证用的ak和sk硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全; // 本示例以ak和sk保存在环境变量中来实现身份验证为例,运行本示例前请先在本地环境中设置环境变量HUAWEICLOUD_SDK_AK和HUAWEICLOUD_SDK_SK。 ak := os.Getenv("HUAWEICLOUD_SDK_AK") sk := os.Getenv("HUAWEICLOUD_SDK_SK") auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). Build() client := bms.NewBmsClient( bms.BmsClientBuilder(). WithRegion(region.ValueOf("cn-north-4")). WithCredential(auth). Build()) keyname := "KeyPair-name" userdata := "aGVsbG8gd29ybGQsIHdlbGNvbWUgdG8gam9pbiB0aGUgY29uZmVyZW5jZQ==" request := &model.ChangeBaremetalServerOsRequest{ ServerId: "****input your bms instance id****", Body: &model.OsChangeReq{ OsChange: &model.OsChange{ Keyname: &keyname, Imageid: "****input your ims image id****", Metadata: &model.MetadataInstall{ UserData: &userdata, }, }, }, } response, err := client.ChangeBaremetalServerOs(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } }
-
Python封装API方式切换操作系统 以下为BMS使用Python语言通过API方式切换操作系统的示例代码。 # -*- coding: UTF-8 -*- import requests import json import time import requests.packages.urllib3.exceptions from urllib3.exceptions import InsecureRequestWarning requests.packages.urllib3.disable_warnings(InsecureRequestWarning) class ServerOperation(object): ################################ IAM 认证API################################################# def __init__(self, account, password, region_name, username=None, project_id=None): """ :param username: if IAM user,here is small user, else big user :param account: account big big user :param password: account :param region_name: """ self.account = account self.username = username self.password = password self.region_name = region_name self.project_id = project_id self.ma_endpoint = "https://modelarts.{}.myhuaweicloud.com".format(region_name) self.service_endpoint = "https://bms.{}.myhuaweicloud.com".format(region_name) self.iam_endpoint = "https://iam.{}.myhuaweicloud.com".format(region_name) self.headers = {"Content-Type": "application/json", "X-Auth-Token": self.get_project_token_by_account(self.iam_endpoint)} def get_project_token_by_account(self, iam_endpoint): body = { "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "name": self.username if self.username else self.account, "password": self.password, "domain": { "name": self.account } } } }, "scope": { "project": { "name": self.region_name } } } } headers = { "Content-Type": "application/json" } import json url = iam_endpoint + "/v3/auth/tokens" response = requests.post(url, headers=headers, data=json.dumps(body), verify=True) token = (response.headers['X-Subject-Token']) return token def change_os(self, server_id): url = "{}/v1/{}/baremetalservers/{}/changeos".format(self.service_endpoint, self.project_id, server_id) print(url) body = { "os-change": { "adminpass": "@Server", "imageid": "40d88eea-6e41-418a-ad6c-c177fe1876b8" } } response = requests.post(url, headers=self.headers, data=json.dumps(body), verify=False) print(json.dumps(response.json(), indent=1)) return response.json() if __name__ == '__main__': # 调用API前置准备,初始化认证鉴权信息 server = ServerOperation(username="xxx", account="xxx", password="xxx", project_id="xxx", region_name="cn-north-4") server.change_os(server_id="0c84bb62-35bd-4e1c-ba08-a3a686bc5097")
-
在BMS控制台切换操作系统 获取操作系统镜像。 由云服务官方提供给客户操作系统镜像,在IMS 镜像服务 的共享镜像处进行接收即可,参考如下图操作。 图1 共享镜像 切换操作系统。 对Lite Server资源对应的裸金属服务器,对其进行关机操作,完成关机后,才可以执行切换操作系统动作。 在裸金属服务的更多选项中,单击切换操作系统,如下图所示。 图2 切换操作系统 在切换操作系统界面,选择上一步接收到的共享镜像即可。
-
操作影响 重置或切换Lite Server节点操作系统的影响如下: 系统盘ID变化:切换或重置操作系统后,EVS系统盘ID会变化,和下单时订单中的EVS ID已经不一致,导致无法进行EVS系统盘扩容操作。系统会提示“当前订单已到期,无法进行扩容操作,请续订”。 userdata配置影响:切换操作系统时,userdata的注入可能不会生效,特别是在configdriver模式下。客户需要确保在创建节点时传入userdata参数,或者在切换后手动配置必要的设置。因此切换或者重置操作系统后,建议通过挂载数据盘EVS或挂载SFS盘等方式进行存储扩容。 应用和模型影响:切换操作系统可能影响已部署的应用或模型,因为依赖的软件包或库可能需要重新安装或配置。用户需要重新配置必要的依赖项以确保应用正常运行。 裸金属服务器风险:对于裸金属服务器,升级操作系统内核或驱动可能导致不兼容,影响系统启动或基本功能。如果需要升级,请联系云服务商确认。 用户在进行切换或重置操作系统操作前,应确保节点处于关机状态,检查当前配置,备份重要数据,并在必要时联系技术支持以确认操作的可行性。
-
查看Lite Server服务器详情 在您创建了Lite Server节点后,可以通过管理控制台查看和管理您的Lite Server服务器。本节介绍如何查看Lite Server节点的详细信息,包括名称/ID、规格、镜像等信息。 在轻量算力节点 (Lite Server)的节点列表页中,可以查看Server节点的状态、创建时间、计费模式、实例规格名称、核心硬件配置、私网IP地址和绑定的虚拟私有云名称。 图1 查看Server节点 单击某个Server节点名称,进入到Server节点详情页,可以查看更多信息,如表1所示。 表1 详情页参数说明 参数名称 说明 名称 Lite Server服务器的名称。 实例规格 Lite Server服务器的规格。 ID Lite Server服务器的ID,可用于在费用中心查询。 计费模式 Lite Server服务器当前的计费模式。 状态 Lite Server服务器的运行状态。 虚拟私有云 Lite Server服务器创建时绑定的虚拟私有云,单击链接可跳转到虚拟私有云详情页。 裸金属服务器 Lite Server服务器为一台裸金属服务器,单击链接可跳转至对应裸金属服务器的详情页。 镜像 Lite Server服务器的镜像。 创建时间 Lite Server服务器的创建时间。 更新时间 Lite Server服务器的更新时间。 所属订单 Lite Server服务器对应的订单,单击链接可跳转至费用中心。 图2 Lite Server服务器详情 父主题: Lite Server资源管理
-
步骤1 安装模型 安装Megatron-DeepSpeed框架。 使用root用户SSH的方式登录GPU裸金属服务器。具体登录方式请参见SSH密钥方式登录裸金属服务器。 拉取pytorch镜像,可以选择常用的镜像源进行下载。 docker pull nvcr.io/nvidia/pytorch:21.10-py3 启动容器。 docker run -d -t --network=host --gpus all --privileged --ipc=host --ulimit memlock=-1 --ulimit stack=67108864 --name megatron-deepspeed -v /etc/localtime:/etc/localtime -v /root/.ssh:/root/.ssh nvcr.io/nvidia/pytorch:21.10-py3 执行以下命令,进入容器终端。 docker exec -it megatron-deepspeed bash 下载Megatron-DeepSpeed框架。 git clone https://github.com/bigscience-workshop/Megatron-DeepSpeed 如果git clone失败,可以尝试先下载至本地,然后复制至服务器中,在docker cp至容器中。 安装Megatron-DeepSpeed框架。 cd Megatron-DeepSpeed pip install -r requirements.txt -i http://mirrors.myhuaweicloud.com/pypi/web/simple --trusted-host mirrors.myhuaweicloud.com pip install mpi4py -i http://mirrors.myhuaweicloud.com/pypi/web/simple --trusted-host mirrors.myhuaweicloud.com 修改测试代码,注释掉以下文件的断言所在行。 vim /workspace/Megatron-DeepSpeed/megatron/model/fused_softmax.py +191 在“assert mask is None, "Mask is silently ignored due to the use of a custom kernel"”前加“#”,即: # assert mask is None, "Mask is silently ignored due to the use of a custom kernel" 数据集下载和预处理。 本实践中选择使用1GB 79K-record的JSON格式的OSCAR数据集。 下载数据集。 wget https://huggingface.co/bigscience/misc-test-data/resolve/main/stas/oscar-1GB.jsonl.xz wget https://s3.amazonaws.com/models.huggingface.co/bert/gpt2-vocab.json wget https://s3.amazonaws.com/models.huggingface.co/bert/gpt2-merges.txt 解压数据集。 xz -d oscar-1GB.jsonl.xz 预处理数据。 python3 tools/preprocess_data.py \ --input oscar-1GB.jsonl \ --output-prefix meg-gpt2 \ --vocab gpt2-vocab.json \ --dataset-impl mmap \ --tokenizer-type GPT2BPETokenizer \ --merge-file gpt2-merges.txt \ --append-eod \ --workers 8 如果发生如下“np.float”报错,按照报错提示修改为“float”即可。 图1 预处理数据报错 数据预处理完成标识。 图2 数据预处理完成 新建data目录并移动处理好的数据。 mkdir data mv meg-gpt2* ./data mv gpt2* ./data
-
步骤2 单机单卡训练 本小节使用上文的服务器环境和安装好的模型, 使用GP Ant8裸金属服务器, 完成单机单卡GPT-2 MEDIUM模型的训练。 创建预训练脚本文件。 执行以下命令,创建预训练脚本文件。 vim pretrain_gpt2.sh 在文件中添加以下信息。 #! /bin/bash # Runs the "345M" parameter model GPUS_PER_NODE=1 # Change for multinode config MASTER_ADDR=localhost MASTER_PORT=6000 NNODES=1 NODE_RANK=0 WORLD_SIZE=$(($GPUS_PER_NODE*$NNODES)) DATA_PATH=data/meg-gpt2_text_document CHECKPOINT_PATH=checkpoints/gpt2 DISTRIBUTED_ARGS="--nproc_per_node $GPUS_PER_NODE --nnodes $NNODES --node_rank $NODE_RANK --master_addr $MASTER_ADDR --master_port $MASTER_PORT" python -m torch.distributed.launch $DISTRIBUTED_ARGS \ pretrain_gpt.py \ --tensor-model-parallel-size 1 \ --pipeline-model-parallel-size 1 \ --num-layers 24 \ --hidden-size 1024 \ --num-attention-heads 16 \ --micro-batch-size 4 \ --global-batch-size 8 \ --seq-length 1024 \ --max-position-embeddings 1024 \ --train-iters 5000 \ --lr-decay-iters 320000 \ --save $CHECKPOINT_PATH \ --load $CHECKPOINT_PATH \ --data-path $DATA_PATH \ --vocab-file data/gpt2-vocab.json \ --merge-file data/gpt2-merges.txt \ --data-impl mmap \ --split 949,50,1 \ --distributed-backend nccl \ --lr 0.00015 \ --lr-decay-style cosine \ --min-lr 1.0e-5 \ --weight-decay 1e-2 \ --clip-grad 1.0 \ --lr-warmup-fraction .01 \ --checkpoint-activations \ --log-interval 10 \ --save-interval 500 \ --eval-interval 100 \ --eval-iters 10 \ --fp16 开始训练。 本文是单机单卡训练,使用预训练脚本参数控制: GPUS_PER_NODE=1 NNODES=1 NODE_RANK=0 执行以下命令,开始预训练。 nohup sh ./pretrain_gpt2.sh & 图3 开始预训练 实时查看训练日志,监控程序。 tail -f nohup.out 如果显示如下信息, 表示模型训练完成。 图4 模型训练完成 在训练过程中观察单GPU卡的利用率,如下: 图5 GPU利用率 查看生成的模型checkpoint。 本示例生成的模型checkpoint路径设置在“/workspace/Megatron-DeepSpeed/checkpoints/gpt2”。 ll ./checkpoints/gpt2 图6 模型checkpoint
-
步骤3 单机多卡训练 和单机单卡训练相比, 单机多卡训练只需在预训练脚本中设置多卡参数相关即可, 其余步骤与单机单卡相同。 当前选择GPU裸金属服务器是8卡, 因此需要在预训练脚本中调整如下参数: GPUS_PER_NODE=8 调整全局批处理大小(global batch size)、微批处理大小(micro batch size)、数据并行大小(data_parallel_size)参数。三者的关系为:“global_batch_size”可被“micro_batch_size * data_parallel_size”整除。 本文设置的参数值如下: global_batch_size = 64 micro_batch_size = 4 data_parallel_size = 8 单机多卡完整的预训练脚本内容如下: #! /bin/bash # Runs the "345M" parameter model GPUS_PER_NODE=8 # Change for multinode config MASTER_ADDR=localhost MASTER_PORT=6000 NNODES=1 NODE_RANK=0 WORLD_SIZE=$(($GPUS_PER_NODE*$NNODES)) DATA_PATH=data/meg-gpt2_text_document CHECKPOINT_PATH=checkpoints/gpt2 DISTRIBUTED_ARGS="--nproc_per_node $GPUS_PER_NODE --nnodes $NNODES --node_rank $NODE_RANK --master_addr $MASTER_ADDR --master_port $MASTER_PORT" python -m torch.distributed.launch $DISTRIBUTED_ARGS \ pretrain_gpt.py \ --tensor-model-parallel-size 1 \ --pipeline-model-parallel-size 1 \ --num-layers 24 \ --hidden-size 1024 \ --num-attention-heads 16 \ --micro-batch-size 4 \ --global-batch-size 64 \ --seq-length 1024 \ --max-position-embeddings 1024 \ --train-iters 5000 \ --lr-decay-iters 320000 \ --save $CHECKPOINT_PATH \ --load $CHECKPOINT_PATH \ --data-path $DATA_PATH \ --vocab-file data/gpt2-vocab.json \ --merge-file data/gpt2-merges.txt \ --data-impl mmap \ --split 949,50,1 \ --distributed-backend nccl \ --lr 0.00015 \ --lr-decay-style cosine \ --min-lr 1.0e-5 \ --weight-decay 1e-2 \ --clip-grad 1.0 \ --lr-warmup-fraction .01 \ --checkpoint-activations \ --log-interval 10 \ --save-interval 500 \ --eval-interval 100 \ --eval-iters 10 \ --fp16 训练时监控的GPU利用率如下: 图7 GPU利用率
-
背景信息 Megatron-DeepSpeed Megatron-DeepSpeed是一个基于PyTorch的深度学习模型训练框架。它结合了两个强大的工具:Megatron-LM和DeepSpeed,可在具有分布式计算能力的系统上进行训练,并且充分利用了多个GPU和深度学习加速器的并行处理能力。可以高效地训练大规模的语言模型。 Megatron-LM是一个用于大规模语言建模的模型。它基于GPT(Generative Pre-trained Transformer)架构,这是一种基于自注意力机制的神经网络模型,广泛用于自然语言处理任务,如文本生成、 机器翻译 和对话系统等。 DeepSpeed是开源的加速深度学习训练的库。它针对大规模的模型和分布式训练进行了优化,可以显著提高训练速度和效率。DeepSpeed提供了各种技术和优化策略,包括分布式梯度下降、模型并行化、梯度累积和动态精度缩放等。它还支持优化大模型的内存使用和计算资源分配。 GPT2 GPT2(Generative Pre-trained Transformer 2),是OpenAI组织在2018年于GPT模型的基础上发布的新预训练模型,是一个基于Transformer且非常庞大的语言模型。它在大量数据集上进行了训练,直接运行一个预训练好的GPT-2模型:给定一个预定好的起始单词或者句子,可以让它自行地随机生成后续的文本。
-
环境准备 在ModelArts Server预购相关超强算力的GPU裸金属服务器,并选择AIGC场景通用的镜像,完成使用Megatron-DeepSpeed训练GPT2模型。本最佳实践使用以下镜像和规格: 镜像选择:Ubuntu 20.04 x86 64bit SDI3 for Ant8 BareMetal with RoCE and NVIDIA-525 CUDA-12.0。 裸金属规格选择: GP Ant8,包含8张GPU卡以及8张RoCE网卡。 关于Ant8裸金属服务器的购买,可以提工单至ModelArts云服务, 完成资源的申请。
-
GP Ant8裸金属服务器Ubuntu 20.04安装NVIDIA 515+CUDA 11.7 本小节旨在指导如何在GP Ant8裸金属服务器上(Ubuntu 20.04系统),安装NVIDIA驱动版本515、CUDA版本11.7、nvidia-fabricmanager版本515,并进行nccl-test测试。 替换apt源。 sudo sed -i "s@http://.*archive.ubuntu.com@http://repo.huaweicloud.com@g" /etc/apt/sources.list sudo sed -i "s@http://.*security.ubuntu.com@http://repo.huaweicloud.com@g" /etc/apt/sources.list sudo apt update 安装nvidia驱动。 wget https://us.download.nvidia.com/tesla/515.105.01/NVIDIA-Linux-x86_64-515.105.01.run chmod +x NVIDIA-Linux-x86_64-515.105.01.run ./NVIDIA-Linux-x86_64-515.105.01.run 安装cuda。 # run包安装 wget https://developer.download.nvidia.com/compute/cuda/11.7.0/local_installers/cuda_11.7.0_515.43.04_linux.run chmod +x cuda_11.7.0_515.43.04_linux.run ./cuda_11.7.0_515.43.04_linux.run --toolkit --samples --silent 安装nccl。 nccl安装可参考NCCL Documentation。 nccl和cuda版本的配套关系和安装方法参考NCL Downloads。 本文使用cuda版本是11.7,因此安装nccl的命令为: wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-keyring_1.0-1_all.deb sudo dpkg -i cuda-keyring_1.0-1_all.deb sudo apt update sudo apt install libnccl2=2.14.3-1+cuda11.7 libnccl-dev=2.14.3-1+cuda11.7 安装完成后可以查看: 图5 查看nccl 安装nvidia-fabricmanager。 nvidia-fabricmanager必须和nvidia driver版本保持一致。 version=515.105.01 main_version=$(echo $version | awk -F '.' '{print $1}') apt-get update apt-get -y install nvidia-fabricmanager-${main_version}=${version}-* 验证驱动安装结果:启动fabricmanager服务并查看状态是否为“RUNNING”。 nvidia-smi -pm 1 nvidia-smi systemctl enable nvidia-fabricmanager systemctl start nvidia-fabricmanager systemctl status nvidia-fabricmanager 安装nv-peer-memory。 git clone https://github.com/Mellanox/nv_peer_memory.git cd ./nv_peer_memory ./build_module.sh cd /tmp tar xzf /tmp/nvidia-peer-memory_1.3.orig.tar.gz cd nvidia-peer-memory-1.3 dpkg-buildpackage -us -uc dpkg -i ../nvidia-peer-memory-dkms_1.2-0_all.deb nv_peer_mem工作在linux内核态,安装完成后需要看是否加载到内核,通过执行“lsmod | grep peer”查看是否加载。 如果git clone拉不下来代码,可能需要先设置下git的配置: git config --global core.compression -1 export GIT_SSL_NO_VERIFY=1 git config --global http.sslVerify false git config --global http.postBuffer 10524288000 git config --global http.lowSpeedLimit 1000 git config --global http.lowSpeedTime 1800 如果安装完成后lsmod看不到nv-peer-memory,可能是由于ib驱动版本过低导致,此时需要升级ib驱动,升级命令: wget https://content.mellanox.com/ofed/MLNX_OFED-5.4-3.6.8.1/MLNX_OFED_LINUX-5.4-3.6.8.1-ubuntu20.04-x86_64.tgz tar -zxvf MLNX_OFED_LINUX-5.4-3.6.8.1-ubuntu20.04-x86_64.tgz cd MLNX_OFED_LINUX-5.4-3.6.8.1-ubuntu20.04-x86_64 apt-get install -y python3 gcc quilt build-essential bzip2 dh-python pkg-config dh-autoreconf python3-distutils debhelper make ./mlnxofedinstall --add-kernel-support 如果想安装其它更高版本的ib驱动,请参考Linux InfiniBand Drivers。比如要安装MLNX_OFED-5.8-2.0.3.0 (当前最新版本),则命令为: wget https://content.mellanox.com/ofed/MLNX_OFED-5.8-2.0.3.0/MLNX_OFED_LINUX-5.8-2.0.3.0-ubuntu20.04-x86_64.tgz tar -zxvf MLNX_OFED_LINUX-5.8-2.0.3.0-ubuntu20.04-x86_64.tgz cd MLNX_OFED_LINUX-5.8-2.0.3.0-ubuntu20.04-x86_64 apt-get install -y python3 gcc quilt build-essential bzip2 dh-python pkg-config dh-autoreconf python3-distutils debhelper make ./mlnxofedinstall --add-kernel-support 安装完nv_peer_mem, 如果想查看其状态可以输入如下指令: /etc/init.d/nv_peer_mem/ status 如果发现没有此文件,则可能安装的时候没有默认复制过来,需要复制即可: cp /tmp/nvidia-peer-memory-1.3/nv_peer_mem.conf /etc/infiniband/ cp /tmp/nvidia-peer-memory-1.3/debian/tmp/etc/init.d/nv_peer_mem /etc/init.d/ 设置环境变量。 MPI路径版本需要匹配,可以通过“ls /usr/mpi/gcc/”查看openmpi的具体版本。 # 加入到~/.bashrc export LD_LIBRARY_PATH=/usr/local/cuda/lib:usr/local/cuda/lib64:/usr/include/nccl.h:/usr/mpi/gcc/openmpi-4.1.2a1/lib:$LD_LIBRARY_PATH export PATH=$PATH:/usr/local/cuda/bin:/usr/mpi/gcc/openmpi-4.1.2a1/bin 安装编译nccl-test。 cd /root git clone https://github.com/NVIDIA/nccl-tests.git cd ./nccl-tests make MPI=1 MPI_HOME=/usr/mpi/gcc/openmpi-4.1.2a1 -j 8 编译时需要加上MPI=1的参数,否则无法进行多机之间的测试。 MPI路径版本需要匹配,可以通过“ls /usr/mpi/gcc/”查看openmpi的具体版本。 nccl-test测试。 单机测试: /root/nccl-tests/build/all_reduce_perf -b 8 -e 1024M -f 2 -g 8 多机测试(btl_tcp_if_include后面替换为主网卡名称): mpirun --allow-run-as-root --hostfile hostfile -mca btl_tcp_if_include eth0 -mca btl_openib_allow_ib true -x NCCL_DEBUG=INFO -x NCCL_IB_GID_INDEX=3 -x NCCL_IB_TC=128 -x NCCL_ALGO=RING -x NCCL_IB_HCA=^mlx5_bond_0 -x LD_LIBRARY_PATH /root/nccl-tests/build/all_reduce_perf -b 8 -e 11g -f 2 -g 8 hostfile格式: #主机私有IP 单节点进程数 192.168.20.1 slots=1 192.168.20.2 slots=1 NCCL环境变量说明: NCCL_IB_GID_INDEX=3 :数据包走交换机的队列4通道,这是RoCE协议标准。 NCCL_IB_TC=128 :使用RoCE v2协议,默认使用RoCE v1,但是v1在交换机上没有拥塞控制,可能会丢包,而且后续的交换机不会支持v1,会导致无法运行。 NCCL_ALGO=RING :nccl_test的总线bandwidth是在假定是Ring算法的情况下计算出来的。 计算公式是有假设的: 总线带宽 = 算法带宽 * 2 ( N-1 ) / N ,算法带宽 = 数据量 / 时间 但是这个计算公式的前提是用Ring算法,Tree算法的总线带宽不可以这么计算。 如果Tree算法算出来的总线带宽相当于是相对Ring算法的性能加速。算法计算总耗时减少了,所以用公式算出来的总线带宽也增加了。理论上Tree算法是比Ring算法更优的,但是Tree算法对网络的要求比Ring高,计算可能不太稳定。 Tree算法可以用更少的数据通信量完成all reduce计算,但用来测试性能不太合适。因此,会出现两节点实际带宽100,但测试出速度110,甚至130GB/s的情况。加这个参数以后,2节点和2节点以上情况的速度才会稳定一些。 测试时需要执行mpirun的节点到hostfile中的节点间有免密登录,设置SSH免密登录方法如下: 客户端生成公私钥。 执行如下命令,在本地客户端生成公私钥(一路回车默认即可)。 ssh-keygen 上面这个命令会在用户目录.ssh文件夹下创建“id_rsa.pub”(公钥)和“id_rsa”(私钥),可通过如下命令查看: cd ~/.ssh 上传公钥到服务器。 例如用户名为root,服务器地址为192.168.222.213,则将公钥上传至服务器的命令如下: ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.222.213 通过如下命令可以看到客户端写入到服务器的id_rsa.pub (公钥)内容: cd ~/.ssh vim authorized_keys 测试免密登录。 客户端通过ssh连接远程服务器,即可免密登录。 ssh root@192.168.222.213
-
安装Docker 部分Vnt1裸金属服务器的预置镜像中未安装Docker,您可参考以下步骤进行安装。 安装Docker。 curl https://get.docker.com | sh && sudo systemctl --now enable docker 安装NIVDIA容器插件。 distribution=$(. /etc/os-release;echo $ID$VERSION_ID) && curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg && curl -s -L https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.list | sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list apt-get update apt-get install -y nvidia-container-toolkit nvidia-ctk runtime configure --runtime=docker systemctl restart docker 验证Docker模式环境是否安装成功。 基于PyTorch2.0镜像验证(本案例中镜像较大,拉取时间可能较长)。 docker run -ti --runtime=nvidia --gpus all pytorch/pytorch:2.0.0-cuda11.7-cudnn8-devel bash 图3 成功拉取镜像
-
安装nvidia-fabricmanager Ant系列GPU支持NvLink & NvSwitch,如果您使用多GPU卡的机型,需额外安装与驱动版本对应的nvidia-fabricmanager服务使GPU卡间能够互联,否则可能无法正常使用GPU实例。 nvidia-fabricmanager必须和nvidia driver版本保持一致。 以安装515.105.01版本为例。 version=515.105.01 main_version=$(echo $version | awk -F '.' '{print $1}') apt-get update apt-get -y install nvidia-fabricmanager-${main_version}=${version}-* 验证驱动安装结果:启动fabricmanager服务并查看状态是否为“RUNNING”。 nvidia-smi -pm 1 nvidia-smi systemctl enable nvidia-fabricmanager systemctl start nvidia-fabricmanager systemctl status nvidia-fabricmanager
-
GP Vnt1裸金属服务器EulerOS 2.9安装NVIDIA 515+CUDA 11.7 本小节旨在指导如何在GP Vnt1裸金属服务器上(Euler2.9系统),安装NVIDIA驱动版本515.105.01,CUDA版本11.7.1。 安装NVIDIA驱动。 wget https://us.download.nvidia.com/tesla/515.105.01/NVIDIA-Linux-x86_64-515.105.01.run chmod 700 NVIDIA-Linux-x86_64-515.105.01.run yum install -y elfutils-libelf-devel ./NVIDIA-Linux-x86_64-515.105.01.run --kernel-source-path=/usr/src/kernels/4.18.0-147.5.1.6.h998.eulerosv2r9.x86_64 默认情况下Vnt1裸金属服务器在EulerOS 2.9使用的yum源是“http://repo.huaweicloud.com”,该源可用。如果执行“yum update”时报错, 显示有软件包冲突等问题, 可通过“yum remove xxx软件包”解决该问题。 NVIDIA的驱动程序是一个二进制文件,需使用系统中的libelf库(在elfutils-libelf-devel开发包)中。它提供了一组C函数,用于读取、修改和创建ELF文件,而NVIDIA驱动程序需要使用这些函数来解析当前正在运行的内核和其他相关信息。 安装过程中的提示均选OK或YES,安装好后执行reboot重启机器,再次登录后执行命令查看GPU卡信息。 nvidia-smi -pm 1 #该命令执行时间较长,请耐心等待,作用为启用持久模式,可以优化Linux实例上GPU设备的性能 nvidia-smi 安装CUDA。 wget https://developer.download.nvidia.com/compute/cuda/11.7.1/local_installers/cuda_11.7.1_515.65.01_linux.run chmod 700 cuda_11.7.1_515.65.01_linux.run ./cuda_11.7.1_515.65.01_linux.run --toolkit --samples --silent 安装好后执行以下命令检查安装结果: /usr/local/cuda/bin/nvcc -V PyTorch2.0安装和CUDA验证指南。 PyTorch2.0所需环境为Python3.10, 安装配置miniconda环境。 miniconda安装并创建alpha环境。 wget https://repo.anaconda.com/miniconda/Miniconda3-py310_23.1.0-1-Linux-x86_64.sh chmod 750 Miniconda3-py310_23.1.0-1-Linux-x86_64.sh bash Miniconda3-py310_23.1.0-1-Linux-x86_64.sh -b -p /home/miniconda export PATH=/home/miniconda/bin:$PATH conda create --quiet --yes -n alpha python=3.10 安装pytorch2.0并验证cuda状态。 在alpha环境下安装torch2.0,使用清华PIP源完成。 source activate alpha pip install torch==2.0 -i https://pypi.tuna.tsinghua.edu.cn/simple python 验证torch与cuda的安装状态,输出为True即为正常。 import torch print(torch.cuda.is_available())
-
安装NVIDIA驱动 打开NVIDIA官方网站。 以Ant8规格为例,根据Ant8的详细信息和您所需的cuda版本选择驱动。 图1 驱动选择 选择后会自动出现Driver版本并下载,或者直接。 wget https://cn.download.nvidia.com/tesla/470.182.03/NVIDIA-Linux-x86_64-470.182.03.run 添加权限。 chmod +x NVIDIA-Linux-x86_64-470.182.03.run 运行安装文件。 ./NVIDIA-Linux-x86_64-470.182.03.run 至此NVIDIA-DRIVER驱动安装完成。
-
GP Vnt1裸金属服务器Ubuntu 18.04安装NVIDIA 470+CUDA 11.4 本小节旨在指导如何在GP Vnt1裸金属服务器上(Ubuntu 18.04系统),安装NVIDIA驱动版本470,CUDA版本11.4。 安装NVIDIA驱动。 apt-get update sudo apt-get install nvidia-driver-470 安装CUDA。 wget https://developer.download.nvidia.com/compute/cuda/11.4.4/local_installers/cuda_11.4.4_470.82.01_linux.run chmod +x cuda_11.4.4_470.82.01_linux.run ./cuda_11.4.4_470.82.01_linux.run --toolkit --samples --silent 验证NVIDIA安装结果。 nvidia-smi -pm 1 nvidia-smi /usr/local/cuda/bin/nvcc -V 安装Pytorch2.0和验证CUDA验证。 PyTorch2.0所需环境为Python3.10, 安装配置miniconda环境。 miniconda安装并创建alpha环境。 wget https://repo.anaconda.com/miniconda/Miniconda3-py310_23.1.0-1-Linux-x86_64.sh chmod 750 Miniconda3-py310_23.1.0-1-Linux-x86_64.sh bash Miniconda3-py310_23.1.0-1-Linux-x86_64.sh -b -p /home/miniconda export PATH=/home/miniconda/bin:$PATH conda create --quiet --yes -n alpha python=3.10 安装pytorch2.0并验证cuda状态。 在alpha环境下安装torch2.0,使用清华PIP源完成。 source activate alpha conda install pytorch torchvision torchaudio pytorch-cuda=11.7 -c pytorch -c nvidia python 验证torch与cuda的安装状态,输出为True即为正常。 import torch print(torch.cuda.is_available())
共100000条
- 1
- ...
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
- 100
- 101
- 102
- 103
- 104
- 105
- 106
- 107
- 108
- 109
- 110
- 111
- 112
- 113
- 114
- 115
- 116
- 117
- 118
- 119
- 120
- 121
- 122
- 123
- 124
- 125
- 126
- 127
- 128
- 129
- 130
- 131
- 132
- 133
- 134
- 135
- 136
- 137
- 138
- 139
- 140
- 141
- 142
- 143
- 144
- 145
- 146
- 147
- 148
- 149
- 150
- 151
- 152
- 153
- 154
- 155
- 156
- 157
- 158
- 159
- 160
- 161
- 162
- 163
- 164
- 165
- 166
- 167
- 168
- 169
- 170
- 171
- 172
- 173
- 174
- 175
- 176
- 177
- 178
- 179
- 180
- 181
- 182
- 183
- 184
- 185
- 186
- 187
- 188
- 189
- 190
- 191
- 192
- 193
- 194
- 195
- 196
- 197
- 198
- 199
- 200
- 201
- 202
- 203
- 204
- 205
- 206
- 207
- 208
- 209
- 210
- 211
- 212
- 213
- 214
- 215
- 216
- 217
- 218
- 219
- 220
- 221
- 222
- 223
- 224
- 225
- 226
- 227
- 228
- 229
- 230
- 231
- 232
- 233
- 234
- 235
- 236
- 237
- 238
- 239
- 240
- 241
- 242
- 243
- 244
- 245
- 246
- 247
- 248
- 249
- 250
- 251
- 252
- 253
- 254
- 255
- 256
- 257
- 258
- 259
- 260
- 261
- 262
- 263
- 264
- 265
- 266
- 267
- 268
- 269
- 270
- 271
- 272
- 273
- 274
- 275
- 276
- 277
- 278
- 279
- 280
- 281
- 282
- 283
- 284
- 285
- 286
- 287
- 288
- 289
- 290
- 291
- 292
- 293
- 294
- 295
- 296
- 297
- 298
- 299
- 300
- 301
- 302
- 303
- 304
- 305
- 306
- 307
- 308
- 309
- 310
- 311
- 312
- 313
- 314
- 315
- 316
- 317
- 318
- 319
- 320
- 321
- 322
- 323
- 324
- 325
- 326
- 327
- 328
- 329
- 330
- 331
- 332
- 333
- 334
- 335
- 336
- 337
- 338
- 339
- 340
- 341
- 342
- 343
- 344
- 345
- 346
- 347
- 348
- 349
- 350
- 351
- 352
- 353
- 354
- 355
- 356
- 357
- 358
- 359
- 360
- 361
- 362
- 363
- 364
- 365
- 366
- 367
- 368
- 369
- 370
- 371
- 372
- 373
- 374
- 375
- 376
- 377
- 378
- 379
- 380
- 381
- 382
- 383
- 384
- 385
- 386
- 387
- 388
- 389
- 390
- 391
- 392
- 393
- 394
- 395
- 396
- 397
- 398
- 399
- 400
- 401
- 402
- 403
- 404
- 405
- 406
- 407
- 408
- 409
- 410
- 411
- 412
- 413
- 414
- 415
- 416
- 417
- 418
- 419
- 420
- 421
- 422
- 423
- 424
- 425
- 426
- 427
- 428
- 429
- 430
- 431
- 432
- 433
- 434
- 435
- 436
- 437
- 438
- 439
- 440
- 441
- 442
- 443
- 444
- 445
- 446
- 447
- 448
- 449
- 450
- 451
- 452
- 453
- 454
- 455
- 456
- 457
- 458
- 459
- 460
- 461
- 462
- 463
- 464
- ...
- 465
- 466
- 467
- 468
- 469
- 470
- 471
- 472
- 473
- 474
- 475
- 476
- 477
- 478
- 479
- 480
- 481
- 482
- 483
- 484
- 485
- 486
- 487
- 488
- 489
- 490
- 491
- 492
- 493
- 494
- 495
- 496
- 497
- 498
- 499
- 500
- 501
- 502
- 503
- 504
- 505
- 506
- 507
- 508
- 509
- 510
- 511
- 512
- 513
- 514
- 515
- 516
- 517
- 518
- 519
- 520
- 521
- 522
- 523
- 524
- 525
- 526
- 527
- 528
- 529
- 530
- 531
- 532
- 533
- 534
- 535
- 536
- 537
- 538
- 539
- 540
- 541
- 542
- 543
- 544
- 545
- 546
- 547
- 548
- 549
- 550
- 551
- 552
- 553
- 554
- 555
- 556
- 557
- 558
- 559
- 560
- 561
- 562
- 563
- 564
- 565
- 566
- 567
- 568
- 569
- 570
- 571
- 572
- 573
- 574
- 575
- 576
- 577
- 578
- 579
- 580
- 581
- 582
- 583
- 584
- 585
- 586
- 587
- 588
- 589
- 590
- 591
- 592
- 593
- 594
- 595
- 596
- 597
- 598
- 599
- 600
- 601
- 602
- 603
- 604
- 605
- 606
- 607
- 608
- 609
- 610
- 611
- 612
- 613
- 614
- 615
- 616
- 617
- 618
- 619
- 620
- 621
- 622
- 623
- 624
- 625
- 626
- 627
- 628
- 629
- 630
- 631
- 632
- 633
- 634
- 635
- 636
- 637
- 638
- 639
- 640
- 641
- 642
- 643
- 644
- 645
- 646
- 647
- 648
- 649
- 650
- 651
- 652
- 653
- 654
- 655
- 656
- 657
- 658
- 659
- 660
- 661
- 662
- 663
- 664
- 665
- 666
- 667
- 668
- 669
- 670
- 671
- 672
- 673
- 674
- 675
- 676
- 677
- 678
- 679
- 680
- 681
- 682
- 683
- 684
- 685
- 686
- 687
- 688
- 689
- 690
- 691
- 692
- 693
- 694
- 695
- 696
- 697
- 698
- 699
- 700
- 701
- 702
- 703
- 704
- 705
- 706
- 707
- 708
- 709
- 710
- 711
- 712
- 713
- 714
- 715
- 716
- 717
- 718
- 719
- 720
- 721
- 722
- 723
- 724
- 725
- 726
- 727
- 728
- 729
- 730
- 731
- 732
- 733
- 734
- 735
- 736
- 737
- 738
- 739
- 740
- 741
- 742
- 743
- 744
- 745
- 746
- 747
- 748
- 749
- 750
- 751
- 752
- 753
- 754
- 755
- 756
- 757
- 758
- 759
- 760
- 761
- 762
- 763
- 764
- 765
- 766
- 767
- 768
- 769
- 770
- 771
- 772
- 773
- 774
- 775
- 776
- 777
- 778
- 779
- 780
- 781
- 782
- 783
- 784
- 785
- 786
- 787
- 788
- 789
- 790
- 791
- 792
- 793
- 794
- 795
- 796
- 797
- 798
- 799
- 800
- 801
- 802
- 803
- 804
- 805
- 806
- 807
- 808
- 809
- 810
- 811
- 812
- 813
- 814
- 815
- 816
- 817
- 818
- 819
- 820
- 821
- 822
- 823
- 824
- 825
- 826
- 827
- 828
- 829
- 830
- 831
- 832
- 833
- 834
- 835
- 836
- 837
- 838
- 839
- 840
- 841
- 842
- 843
- 844
- 845
- 846
- 847
- 848
- 849
- 850
- 851
- 852
- 853
- 854
- 855
- 856
- 857
- 858
- 859
- 860
- 861
- 862
- 863
- 864
- 865
- 866
- 867
- 868
- 869
- 870
- 871
- 872
- 873
- 874
- 875
- 876
- 877
- 878
- 879
- 880
- 881
- 882
- 883
- 884
- 885
- 886
- 887
- 888
- 889
- 890
- 891
- 892
- 893
- 894
- 895
- 896
- 897
- 898
- 899
- 900
- 901
- 902
- 903
- 904
- 905
- 906
- 907
- 908
- 909
- 910
- 911
- 912
- 913
- 914
- 915
- 916
- 917
- 918
- 919
- 920
- 921
- 922
- 923
- 924
- 925
- 926
- 927
- 928
- 929
- 930
- 931
- 932
- 933
- 934
- 935
- 936
- 937
- 938
- 939
- 940
- 941
- 942
- 943
- 944
- 945
- 946
- 947
- 948
- 949
- 950
- 951
- 952
- 953
- 954
- 955
- 956
- 957
- 958
- 959
- 960
- 961
- 962
- 963
- 964
- 965
- 966
- 967
- 968
- 969
- 970
- 971
- 972
- 973
- 974
- 975
- 976
- 977
- 978
- 979
- 980
- 981
- 982
- 983
- 984
- 985
- 986
- 987
- 988
- 989
- 990
- 991
- 992
- 993
- 994
- 995
- 996
- 997
- 998
- 999
- 1000
- 1001
- 1002
- 1003
- 1004
- 1005
- 1006
- 1007
- 1008
- 1009
- 1010
- 1011
- 1012
- 1013
- 1014
- 1015
- 1016
- 1017
- 1018
- 1019
- 1020
- 1021
- 1022
- 1023
- 1024
- 1025
- 1026
- 1027
- 1028
- 1029
- 1030
- 1031
- 1032
- 1033
- 1034
- 1035
- 1036
- 1037
- 1038
- 1039
- 1040
- 1041
- 1042
- 1043
- 1044
- 1045
- 1046
- 1047
- 1048
- 1049
- 1050
- 1051
- 1052
- 1053
- 1054
- 1055
- 1056
- 1057
- 1058
- 1059
- 1060
- 1061
- 1062
- 1063
- 1064
- 1065
- 1066
- 1067
- 1068
- 1069
- 1070
- 1071
- 1072
- 1073
- 1074
- 1075
- 1076
- 1077
- 1078
- 1079
- 1080
- 1081
- 1082
- 1083
- 1084
- 1085
- 1086
- 1087
- 1088
- 1089
- 1090
- 1091
- 1092
- 1093
- 1094
- 1095
- 1096
- 1097
- 1098
- 1099
- 1100
- 1101
- 1102
- 1103
- 1104
- 1105
- 1106
- 1107
- 1108
- 1109
- 1110
- 1111
- 1112
- 1113
- 1114
- 1115
- 1116
- 1117
- 1118
- 1119
- 1120
- 1121
- 1122
- 1123
- 1124
- 1125
- 1126
- 1127
- 1128
- 1129
- 1130
- 1131
- 1132
- 1133
- 1134
- 1135
- 1136
- 1137
- 1138
- 1139
- 1140
- 1141
- 1142
- 1143
- 1144
- 1145
- 1146
- 1147
- 1148
- 1149
- 1150
- 1151
- 1152
- 1153
- 1154
- 1155
- 1156
- 1157
- 1158
- 1159
- 1160
- 1161
- 1162
- 1163
- 1164
- 1165
- 1166
- 1167
- 1168
- 1169
- 1170
- 1171
- 1172
- 1173
- 1174
- 1175
- 1176
- 1177
- 1178
- 1179
- 1180
- 1181
- 1182
- 1183
- 1184
- 1185
- 1186
- 1187
- 1188
- 1189
- 1190
- 1191
- 1192
- 1193
- 1194
- 1195
- 1196
- 1197
- 1198
- 1199
- 1200
- 1201
- 1202
- 1203
- 1204
- 1205
- 1206
- 1207
- 1208
- 1209
- 1210
- 1211
- 1212
- 1213
- 1214
- 1215
- 1216
- 1217
- 1218
- 1219
- 1220
- 1221
- 1222
- 1223
- 1224
- 1225
- 1226
- 1227
- 1228
- 1229
- 1230
- 1231
- 1232
- 1233
- 1234
- 1235
- 1236
- 1237
- 1238
- 1239
- 1240
- 1241
- 1242
- 1243
- 1244
- 1245
- 1246
- 1247
- 1248
- 1249
- 1250
- 1251
- 1252
- 1253
- 1254
- 1255
- 1256
- 1257
- 1258
- 1259
- 1260
- 1261
- 1262
- 1263
- 1264
- 1265
- 1266
- 1267
- 1268
- 1269
- 1270
- 1271
- 1272
- 1273
- 1274
- 1275
- 1276
- 1277
- 1278
- 1279
- 1280
- 1281
- 1282
- 1283
- 1284
- 1285
- 1286
- 1287
- 1288
- 1289
- 1290
- 1291
- 1292
- 1293
- 1294
- 1295
- 1296
- 1297
- 1298
- 1299
- 1300
- 1301
- 1302
- 1303
- 1304
- 1305
- 1306
- 1307
- 1308
- 1309
- 1310
- 1311
- 1312
- 1313
- 1314
- 1315
- 1316
- 1317
- 1318
- 1319
- 1320
- 1321
- 1322
- 1323
- 1324
- 1325
- 1326
- 1327
- 1328
- 1329
- 1330
- 1331
- 1332
- 1333
- 1334
- 1335
- 1336
- 1337
- 1338
- 1339
- 1340
- 1341
- 1342
- 1343
- 1344
- 1345
- 1346
- 1347
- 1348
- 1349
- 1350
- 1351
- 1352
- 1353
- 1354
- 1355
- 1356
- 1357
- 1358
- 1359
- 1360
- 1361
- 1362
- 1363
- 1364
- 1365
- 1366
- 1367
- 1368
- 1369
- 1370
- 1371
- 1372
- 1373
- 1374
- 1375
- 1376
- 1377
- 1378
- 1379
- 1380
- 1381
- 1382
- 1383
- 1384
- 1385
- 1386
- 1387
- 1388
- 1389
- 1390
- 1391
- 1392
- 1393
- 1394
- 1395
- 1396
- 1397
- 1398
- 1399
- 1400
- 1401
- 1402
- 1403
- 1404
- 1405
- 1406
- 1407
- 1408
- 1409
- 1410
- 1411
- 1412
- 1413
- 1414
- 1415
- 1416
- 1417
- 1418
- 1419
- 1420
- 1421
- 1422
- 1423
- 1424
- 1425
- 1426
- 1427
- 1428
- 1429
- 1430
- 1431
- 1432
- 1433
- 1434
- 1435
- 1436
- 1437
- 1438
- 1439
- 1440
- 1441
- 1442
- 1443
- 1444
- 1445
- 1446
- 1447
- 1448
- 1449
- 1450
- 1451
- 1452
- 1453
- 1454
- 1455
- 1456
- 1457
- 1458
- 1459
- 1460
- 1461
- 1462
- 1463
- 1464
- 1465
- 1466
- 1467
- 1468
- 1469
- 1470
- 1471
- 1472
- 1473
- 1474
- 1475
- 1476
- 1477
- 1478
- 1479
- 1480
- 1481
- 1482
- 1483
- 1484
- 1485
- 1486
- 1487
- 1488
- 1489
- 1490
- 1491
- 1492
- 1493
- 1494
- 1495
- 1496
- 1497
- 1498
- 1499
- 1500
- 1501
- 1502
- 1503
- 1504
- 1505
- 1506
- 1507
- 1508
- 1509
- 1510
- 1511
- 1512
- 1513
- 1514
- 1515
- 1516
- 1517
- 1518
- 1519
- 1520
- 1521
- 1522
- 1523
- 1524
- 1525
- 1526
- 1527
- 1528
- 1529
- 1530
- 1531
- 1532
- 1533
- 1534
- 1535
- 1536
- 1537
- 1538
- 1539
- 1540
- 1541
- 1542
- 1543
- 1544
- 1545
- 1546
- 1547
- 1548
- 1549
- 1550
- 1551
- 1552
- 1553
- 1554
- 1555
- 1556
- 1557
- 1558
- 1559
- 1560
- 1561
- 1562
- 1563
- 1564
- 1565
- 1566
- 1567
- 1568
- 1569
- 1570
- 1571
- 1572
- 1573
- 1574
- 1575
- 1576
- 1577
- 1578
- 1579
- 1580
- 1581
- 1582
- 1583
- 1584
- 1585
- 1586
- 1587
- 1588
- 1589
- 1590
- 1591
- 1592
- 1593
- 1594
- 1595
- 1596
- 1597
- 1598
- 1599
- 1600
- 1601
- 1602
- 1603
- 1604
- 1605
- 1606
- 1607
- 1608
- 1609
- 1610
- 1611
- 1612
- 1613
- 1614
- 1615
- 1616
- 1617
- 1618
- 1619
- 1620
- 1621
- 1622
- 1623
- 1624
- 1625
- 1626
- 1627
- 1628
- 1629
- 1630
- 1631
- 1632
- 1633
- 1634
- 1635
- 1636
- 1637
- 1638
- 1639
- 1640
- 1641
- 1642
- 1643
- 1644
- 1645
- 1646
- 1647
- 1648
- 1649
- 1650
- 1651
- 1652
- 1653
- 1654
- 1655
- 1656
- 1657
- 1658
- 1659
- 1660
- 1661
- 1662
- 1663
- 1664
- 1665
- 1666
- 1667
- 1668
- 1669
- 1670
- 1671
- 1672
- 1673
- 1674
- 1675
- 1676
- 1677
- 1678
- 1679
- 1680
- 1681
- 1682
- 1683
- 1684
- 1685
- 1686
- 1687
- 1688
- 1689
- 1690
- 1691
- 1692
- 1693
- 1694
- 1695
- 1696
- 1697
- 1698
- 1699
- 1700
- 1701
- 1702
- 1703
- 1704
- 1705
- 1706
- 1707
- 1708
- 1709
- 1710
- 1711
- 1712
- 1713
- 1714
- 1715
- 1716
- 1717
- 1718
- 1719
- 1720
- 1721
- 1722
- 1723
- 1724
- 1725
- 1726
- 1727
- 1728
- 1729
- 1730
- 1731
- 1732
- 1733
- 1734
- 1735
- 1736
- 1737
- 1738
- 1739
- 1740
- 1741
- 1742
- 1743
- 1744
- 1745
- 1746
- 1747
- 1748
- 1749
- 1750
- 1751
- 1752
- 1753
- 1754
- 1755
- 1756
- 1757
- 1758
- 1759
- 1760
- 1761
- 1762
- 1763
- 1764
- 1765
- 1766
- 1767
- 1768
- 1769
- 1770
- 1771
- 1772
- 1773
- 1774
- 1775
- 1776
- 1777
- 1778
- 1779
- 1780
- 1781
- 1782
- 1783
- 1784
- 1785
- 1786
- 1787
- 1788
- 1789
- 1790
- 1791
- 1792
- 1793
- 1794
- 1795
- 1796
- 1797
- 1798
- 1799
- 1800
- 1801
- 1802
- 1803
- 1804
- 1805
- 1806
- 1807
- 1808
- 1809
- 1810
- 1811
- 1812
- 1813
- 1814
- 1815
- 1816
- 1817
- 1818
- 1819
- 1820
- 1821
- 1822
- 1823
- 1824
- 1825
- 1826
- 1827
- 1828
- 1829
- 1830
- 1831
- 1832
- 1833
- 1834
- 1835
- 1836
- 1837
- 1838
- 1839
- 1840
- 1841
- 1842
- 1843
- 1844
- 1845
- 1846
- 1847
- 1848
- 1849
- 1850
- 1851
- 1852
- 1853
- 1854
- 1855
- 1856
- 1857
- 1858
- 1859
- 1860
- 1861
- 1862
- 1863
- 1864
- 1865
- 1866
- 1867
- 1868
- 1869
- 1870
- 1871
- 1872
- 1873
- 1874
- 1875
- 1876
- 1877
- 1878
- 1879
- 1880
- 1881
- 1882
- 1883
- 1884
- 1885
- 1886
- 1887
- 1888
- 1889
- 1890
- 1891
- 1892
- 1893
- 1894
- 1895
- 1896
- 1897
- 1898
- 1899
- 1900
- 1901
- 1902
- 1903
- 1904
- 1905
- 1906
- 1907
- 1908
- 1909
- 1910
- 1911
- 1912
- 1913
- 1914
- 1915
- 1916
- 1917
- 1918
- 1919
- 1920
- 1921
- 1922
- 1923
- 1924
- 1925
- 1926
- 1927
- 1928
- 1929
- 1930
- 1931
- 1932
- 1933
- 1934
- 1935
- 1936
- 1937
- 1938
- 1939
- 1940
- 1941
- 1942
- 1943
- 1944
- 1945
- 1946
- 1947
- 1948
- 1949
- 1950
- 1951
- 1952
- 1953
- 1954
- 1955
- 1956
- 1957
- 1958
- 1959
- 1960
- 1961
- 1962
- 1963
- 1964
- 1965
- 1966
- 1967
- 1968
- 1969
- 1970
- 1971
- 1972
- 1973
- 1974
- 1975
- 1976
- 1977
- 1978
- 1979
- 1980
- 1981
- 1982
- 1983
- 1984
- 1985
- 1986
- 1987
- 1988
- 1989
- 1990
- 1991
- 1992
- 1993
- 1994
- 1995
- 1996
- 1997
- 1998
- 1999
- 2000
- 2001
- 2002
- 2003
- 2004
- 2005
- 2006
- 2007
- 2008
- 2009
- 2010
- 2011
- 2012
- 2013
- 2014
- 2015
- 2016
- 2017
- 2018
- 2019
- 2020
- 2021
- 2022
- 2023
- 2024
- 2025
- 2026
- 2027
- 2028
- 2029
- 2030
- 2031
- 2032
- 2033
- 2034
- 2035
- 2036
- 2037
- 2038
- 2039
- 2040
- 2041
- 2042
- 2043
- 2044
- 2045
- 2046
- 2047
- 2048
- 2049
- 2050
- 2051
- 2052
- 2053
- 2054
- 2055
- 2056
- 2057
- 2058
- 2059
- 2060
- 2061
- 2062
- 2063
- 2064
- 2065
- 2066
- 2067
- 2068
- 2069
- 2070
- 2071
- 2072
- 2073
- 2074
- 2075
- 2076
- 2077
- 2078
- 2079
- 2080
- 2081
- 2082
- 2083
- 2084
- 2085
- 2086
- 2087
- 2088
- 2089
- 2090
- 2091
- 2092
- 2093
- 2094
- 2095
- 2096
- 2097
- 2098
- 2099
- 2100
- 2101
- 2102
- 2103
- 2104
- 2105
- 2106
- 2107
- 2108
- 2109
- 2110
- 2111
- 2112
- 2113
- 2114
- 2115
- 2116
- 2117
- 2118
- 2119
- 2120
- 2121
- 2122
- 2123
- 2124
- 2125
- 2126
- 2127
- 2128
- 2129
- 2130
- 2131
- 2132
- 2133
- 2134
- 2135
- 2136
- 2137
- 2138
- 2139
- 2140
- 2141
- 2142
- 2143
- 2144
- 2145
- 2146
- 2147
- 2148
- 2149
- 2150
- 2151
- 2152
- 2153
- 2154
- 2155
- 2156
- 2157
- 2158
- 2159
- 2160
- 2161
- 2162
- 2163
- 2164
- 2165
- 2166
- 2167
- 2168
- 2169
- 2170
- 2171
- 2172
- 2173
- 2174
- 2175
- 2176
- 2177
- 2178
- 2179
- 2180
- 2181
- 2182
- 2183
- 2184
- 2185
- 2186
- 2187
- 2188
- 2189
- 2190
- 2191
- 2192
- 2193
- 2194
- 2195
- 2196
- 2197
- 2198
- 2199
- 2200
- 2201
- 2202
- 2203
- 2204
- 2205
- 2206
- 2207
- 2208
- 2209
- 2210
- 2211
- 2212
- 2213
- 2214
- 2215
- 2216
- 2217
- 2218
- 2219
- 2220
- 2221
- 2222
- 2223
- 2224
- 2225
- 2226
- 2227
- 2228
- 2229
- 2230
- 2231
- 2232
- 2233
- 2234
- 2235
- 2236
- 2237
- 2238
- 2239
- 2240
- 2241
- 2242
- 2243
- 2244
- 2245
- 2246
- 2247
- 2248
- 2249
- 2250
- 2251
- 2252
- 2253
- 2254
- 2255
- 2256
- 2257
- 2258
- 2259
- 2260
- 2261
- 2262
- 2263
- 2264
- 2265
- 2266
- 2267
- 2268
- 2269
- 2270
- 2271
- 2272
- 2273
- 2274
- 2275
- 2276
- 2277
- 2278
- 2279
- 2280
- 2281
- 2282
- 2283
- 2284
- 2285
- 2286
- 2287
- 2288
- 2289
- 2290
- 2291
- 2292
- 2293
- 2294
- 2295
- 2296
- 2297
- 2298
- 2299
- 2300
- 2301
- 2302
- 2303
- 2304
- 2305
- 2306
- 2307
- 2308
- 2309
- 2310
- 2311
- 2312
- 2313
- 2314
- 2315
- 2316
- 2317
- 2318
- 2319
- 2320
- 2321
- 2322
- 2323
- 2324
- 2325
- 2326
- 2327
- 2328
- 2329
- 2330
- 2331
- 2332
- 2333
- 2334
- 2335
- 2336
- 2337
- 2338
- 2339
- 2340
- 2341
- 2342
- 2343
- 2344
- 2345
- 2346
- 2347
- 2348
- 2349
- 2350
- 2351
- 2352
- 2353
- 2354
- 2355
- 2356
- 2357
- 2358
- 2359
- 2360
- 2361
- 2362
- 2363
- 2364
- 2365
- 2366
- 2367
- 2368
- 2369
- 2370
- 2371
- 2372
- 2373
- 2374
- 2375
- 2376
- 2377
- 2378
- 2379
- 2380
- 2381
- 2382
- 2383
- 2384
- 2385
- 2386
- 2387
- 2388
- 2389
- 2390
- 2391
- 2392
- 2393
- 2394
- 2395
- 2396
- 2397
- 2398
- 2399
- 2400
- 2401
- 2402
- 2403
- 2404
- 2405
- 2406
- 2407
- 2408
- 2409
- 2410
- 2411
- 2412
- 2413
- 2414
- 2415
- 2416
- 2417
- 2418
- 2419
- 2420
- 2421
- 2422
- 2423
- 2424
- 2425
- 2426
- 2427
- 2428
- 2429
- 2430
- 2431
- 2432
- 2433
- 2434
- 2435
- 2436
- 2437
- 2438
- 2439
- 2440
- 2441
- 2442
- 2443
- 2444
- 2445
- 2446
- 2447
- 2448
- 2449
- 2450
- 2451
- 2452
- 2453
- 2454
- 2455
- 2456
- 2457
- 2458
- 2459
- 2460
- 2461
- 2462
- 2463
- 2464
- 2465
- 2466
- 2467
- 2468
- 2469
- 2470
- 2471
- 2472
- 2473
- 2474
- 2475
- 2476
- 2477
- 2478
- 2479
- 2480
- 2481
- 2482
- 2483
- 2484
- 2485
- 2486
- 2487
- 2488
- 2489
- 2490
- 2491
- 2492
- 2493
- 2494
- 2495
- 2496
- 2497
- 2498
- 2499
- 2500
- 2501
- 2502
- 2503
- 2504
- 2505
- 2506
- 2507
- 2508
- 2509
- 2510
- 2511
- 2512
- 2513
- 2514
- 2515
- 2516
- 2517
- 2518
- 2519
- 2520
- 2521
- 2522
- 2523
- 2524
- 2525
- 2526
- 2527
- 2528
- 2529
- 2530
- 2531
- 2532
- 2533
- 2534
- 2535
- 2536
- 2537
- 2538
- 2539
- 2540
- 2541
- 2542
- 2543
- 2544
- 2545
- 2546
- 2547
- 2548
- 2549
- 2550
- 2551
- 2552
- 2553
- 2554
- 2555
- 2556
- 2557
- 2558
- 2559
- 2560
- 2561
- 2562
- 2563
- 2564
- 2565
- 2566
- 2567
- 2568
- 2569
- 2570
- 2571
- 2572
- 2573
- 2574
- 2575
- 2576
- 2577
- 2578
- 2579
- 2580
- 2581
- 2582
- 2583
- 2584
- 2585
- 2586
- 2587
- 2588
- 2589
- 2590
- 2591
- 2592
- 2593
- 2594
- 2595
- 2596
- 2597
- 2598
- 2599
- 2600
- 2601
- 2602
- 2603
- 2604
- 2605
- 2606
- 2607
- 2608
- 2609
- 2610
- 2611
- 2612
- 2613
- 2614
- 2615
- 2616
- 2617
- 2618
- 2619
- 2620
- 2621
- 2622
- 2623
- 2624
- 2625
- 2626
- 2627
- 2628
- 2629
- 2630
- 2631
- 2632
- 2633
- 2634
- 2635
- 2636
- 2637
- 2638
- 2639
- 2640
- 2641
- 2642
- 2643
- 2644
- 2645
- 2646
- 2647
- 2648
- 2649
- 2650
- 2651
- 2652
- 2653
- 2654
- 2655
- 2656
- 2657
- 2658
- 2659
- 2660
- 2661
- 2662
- 2663
- 2664
- 2665
- 2666
- 2667
- 2668
- 2669
- 2670
- 2671
- 2672
- 2673
- 2674
- 2675
- 2676
- 2677
- 2678
- 2679
- 2680
- 2681
- 2682
- 2683
- 2684
- 2685
- 2686
- 2687
- 2688
- 2689
- 2690
- 2691
- 2692
- 2693
- 2694
- 2695
- 2696
- 2697
- 2698
- 2699
- 2700
- 2701
- 2702
- 2703
- 2704
- 2705
- 2706
- 2707
- 2708
- 2709
- 2710
- 2711
- 2712
- 2713
- 2714
- 2715
- 2716
- 2717
- 2718
- 2719
- 2720
- 2721
- 2722
- 2723
- 2724
- 2725
- 2726
- 2727
- 2728
- 2729
- 2730
- 2731
- 2732
- 2733
- 2734
- 2735
- 2736
- 2737
- 2738
- 2739
- 2740
- 2741
- 2742
- 2743
- 2744
- 2745
- 2746
- 2747
- 2748
- 2749
- 2750
- 2751
- 2752
- 2753
- 2754
- 2755
- 2756
- 2757
- 2758
- 2759
- 2760
- 2761
- 2762
- 2763
- 2764
- 2765
- 2766
- 2767
- 2768
- 2769
- 2770
- 2771
- 2772
- 2773
- 2774
- 2775
- 2776
- 2777
- 2778
- 2779
- 2780
- 2781
- 2782
- 2783
- 2784
- 2785
- 2786
- 2787
- 2788
- 2789
- 2790
- 2791
- 2792
- 2793
- 2794
- 2795
- 2796
- 2797
- 2798
- 2799
- 2800
- 2801
- 2802
- 2803
- 2804
- 2805
- 2806
- 2807
- 2808
- 2809
- 2810
- 2811
- 2812
- 2813
- 2814
- 2815
- 2816
- 2817
- 2818
- 2819
- 2820
- 2821
- 2822
- 2823
- 2824
- 2825
- 2826
- 2827
- 2828
- 2829
- 2830
- 2831
- 2832
- 2833
- 2834
- 2835
- 2836
- 2837
- 2838
- 2839
- 2840
- 2841
- 2842
- 2843
- 2844
- 2845
- 2846
- 2847
- 2848
- 2849
- 2850
- 2851
- 2852
- 2853
- 2854
- 2855
- 2856
- 2857
- 2858
- 2859
- 2860
- 2861
- 2862
- 2863
- 2864
- 2865
- 2866
- 2867
- 2868
- 2869
- 2870
- 2871
- 2872
- 2873
- 2874
- 2875
- 2876
- 2877
- 2878
- 2879
- 2880
- 2881
- 2882
- 2883
- 2884
- 2885
- 2886
- 2887
- 2888
- 2889
- 2890
- 2891
- 2892
- 2893
- 2894
- 2895
- 2896
- 2897
- 2898
- 2899
- 2900
- 2901
- 2902
- 2903
- 2904
- 2905
- 2906
- 2907
- 2908
- 2909
- 2910
- 2911
- 2912
- 2913
- 2914
- 2915
- 2916
- 2917
- 2918
- 2919
- 2920
- 2921
- 2922
- 2923
- 2924
- 2925
- 2926
- 2927
- 2928
- 2929
- 2930
- 2931
- 2932
- 2933
- 2934
- 2935
- 2936
- 2937
- 2938
- 2939
- 2940
- 2941
- 2942
- 2943
- 2944
- 2945
- 2946
- 2947
- 2948
- 2949
- 2950
- 2951
- 2952
- 2953
- 2954
- 2955
- 2956
- 2957
- 2958
- 2959
- 2960
- 2961
- 2962
- 2963
- 2964
- 2965
- 2966
- 2967
- 2968
- 2969
- 2970
- 2971
- 2972
- 2973
- 2974
- 2975
- 2976
- 2977
- 2978
- 2979
- 2980
- 2981
- 2982
- 2983
- 2984
- 2985
- 2986
- 2987
- 2988
- 2989
- 2990
- 2991
- 2992
- 2993
- 2994
- 2995
- 2996
- 2997
- 2998
- 2999
- 3000
- 3001
- 3002
- 3003
- 3004
- 3005
- 3006
- 3007
- 3008
- 3009
- 3010
- 3011
- 3012
- 3013
- 3014
- 3015
- 3016
- 3017
- 3018
- 3019
- 3020
- 3021
- 3022
- 3023
- 3024
- 3025
- 3026
- 3027
- 3028
- 3029
- 3030
- 3031
- 3032
- 3033
- 3034
- 3035
- 3036
- 3037
- 3038
- 3039
- 3040
- 3041
- 3042
- 3043
- 3044
- 3045
- 3046
- 3047
- 3048
- 3049
- 3050
- 3051
- 3052
- 3053
- 3054
- 3055
- 3056
- 3057
- 3058
- 3059
- 3060
- 3061
- 3062
- 3063
- 3064
- 3065
- 3066
- 3067
- 3068
- 3069
- 3070
- 3071
- 3072
- 3073
- 3074
- 3075
- 3076
- 3077
- 3078
- 3079
- 3080
- 3081
- 3082
- 3083
- 3084
- 3085
- 3086
- 3087
- 3088
- 3089
- 3090
- 3091
- 3092
- 3093
- 3094
- 3095
- 3096
- 3097
- 3098
- 3099
- 3100
- 3101
- 3102
- 3103
- 3104
- 3105
- 3106
- 3107
- 3108
- 3109
- 3110
- 3111
- 3112
- 3113
- 3114
- 3115
- 3116
- 3117
- 3118
- 3119
- 3120
- 3121
- 3122
- 3123
- 3124
- 3125
- 3126
- 3127
- 3128
- 3129
- 3130
- 3131
- 3132
- 3133
- 3134
- 3135
- 3136
- 3137
- 3138
- 3139
- 3140
- 3141
- 3142
- 3143
- 3144
- 3145
- 3146
- 3147
- 3148
- 3149
- 3150
- 3151
- 3152
- 3153
- 3154
- 3155
- 3156
- 3157
- 3158
- 3159
- 3160
- 3161
- 3162
- 3163
- 3164
- 3165
- 3166
- 3167
- 3168
- 3169
- 3170
- 3171
- 3172
- 3173
- 3174
- 3175
- 3176
- 3177
- 3178
- 3179
- 3180
- 3181
- 3182
- 3183
- 3184
- 3185
- 3186
- 3187
- 3188
- 3189
- 3190
- 3191
- 3192
- 3193
- 3194
- 3195
- 3196
- 3197
- 3198
- 3199
- 3200
- 3201
- 3202
- 3203
- 3204
- 3205
- 3206
- 3207
- 3208
- 3209
- 3210
- 3211
- 3212
- 3213
- 3214
- 3215
- 3216
- 3217
- 3218
- 3219
- 3220
- 3221
- 3222
- 3223
- 3224
- 3225
- 3226
- 3227
- 3228
- 3229
- 3230
- 3231
- 3232
- 3233
- 3234
- 3235
- 3236
- 3237
- 3238
- 3239
- 3240
- 3241
- 3242
- 3243
- 3244
- 3245
- 3246
- 3247
- 3248
- 3249
- 3250
- 3251
- 3252
- 3253
- 3254
- 3255
- 3256
- 3257
- 3258
- 3259
- 3260
- 3261
- 3262
- 3263
- 3264
- 3265
- 3266
- 3267
- 3268
- 3269
- 3270
- 3271
- 3272
- 3273
- 3274
- 3275
- 3276
- 3277
- 3278
- 3279
- 3280
- 3281
- 3282
- 3283
- 3284
- 3285
- 3286
- 3287
- 3288
- 3289
- 3290
- 3291
- 3292
- 3293
- 3294
- 3295
- 3296
- 3297
- 3298
- 3299
- 3300
- 3301
- 3302
- 3303
- 3304
- 3305
- 3306
- 3307
- 3308
- 3309
- 3310
- 3311
- 3312
- 3313
- 3314
- 3315
- 3316
- 3317
- 3318
- 3319
- 3320
- 3321
- 3322
- 3323
- 3324
- 3325
- 3326
- 3327
- 3328
- 3329
- 3330
- 3331
- 3332
- 3333
- 3333