ArrayFier:一种GPU加速平台

ArrayFier:一种GPU加速平台

论文译文

外文原文题目:ArrayFire: a GPU acceleration platform

中文译文题目:ArrayFier:一种GPU加速平台

原文作者:James Malcolm, Pavan Yalamanchili, Chris McClana- han, Vishwanath Venugopalakrishnan, Krunal Patel, 和 John Melonakos

所属单位:Emory University、Gujarat Power Engineering and Research Institute、ArrayFire等

译文作者:岳昕阳

所属单位:重庆劳格科技有限公司

原文发表于:researchgate网站

https://www.researchgate.net/publication/258716823_ArrayFire_a_GPU_acceleration_platform

版权所有 非授权谢绝转载  

摘要

ArrayFire是一个可以利用C、C++、Fortran和Python语言实现通用型GPU(general purpose GPU,GPGPU)计算应用程序的快速软件开发的GPU矩阵库。ArrayFire包含一个简单的应用程序编程接口(API)并且为CUDA框架和支持OpenCL的设备提供完整的GPU计算能力。它同样还可以提供数千种GPU调谐功能,包括线性代数、卷积、约减与快速傅立叶变换(FFTs),同时还提供信号、复数、统计学与制图学库。我们将进一步描述ArrayFire是如何支持GPU计算应用程序的开发的并且将着重介绍其中一些关键功能在实际代码操作中如何实现。

关键词:CUDA,GPU,GPGPU,ArrayFire,OpenCL



1.介绍

ArrayFire是一个搭建在AccelerEyes网站上的软件平台,它可以为使用者和编程人员提供C、C++、Fortran和Python语言的快速并行数据程序开发,并且在低级GPU应用程序编程接口(例如CUDA、OpenCL和OpenGL)上提供一种简单的高级矩阵抽象,再加上利用数千种GPU调谐组件,可以为使用者在科学、工程、金融等方面保持GPU硬件的完整优势。由于同时拥有使用简单的阵列界面、自动内存管理功能、程序运行中编译功能、用于构造环的并GPU和交互式硬件加速图像库,ArrayFire可以很好的完成并行数据算法的快速原型设计任务与构建已经部署的应用程序任务。


过去十年间,消费者和计算机开发人员对GPU的需求快速上升,尽管成功案例越来越多,GPU软件被开发出来后被采用的数量却只有缓慢的提升。采用量提升缓慢的原因主要是GUP编程较为困难


Cg、GLSH、HLSL和Brook语言的出现标志着流编程开始出现,而流编程语言又是通用型GPU编程的前身,而通用型GPU会将运算映射到图像管道进而导致收到各种限制。随着这些技术的发展,CUDA和OpenCL介绍了一种更加综合性的可编程软件结构,这种结构比流编程更简单,但是也比标准的单线程C/C++更难编程。然而,就算是新的可编程软件结构有这么多优点,绝大多数编程人员依然需要花费大量的时间学习CUDA、OpenCL等新语言才能完成一次成功的编程。


有几家私人企业同样打算达到这些目的。首批这样的公司之一,PeakStream创建了一个C/C++的运行时间和提供大量GPU构造工具集的函数库。RapidMinds公司创建了一个灵活的支持多种前端语言和多种后端硬件目标的中间层。这两项尝试都打算帮助开发人员去更好的控制硬件。而ArrayFire作为最新的GPU构造平台,打算把高级功能移植到底层硬件上去,最终实现在不牺牲整体性能的情况下,提供可编程性与可移植性。




2.ARRAYFIRE



2.1语言支持:C++、Fortran、Python

ArrayFire围绕单个矩阵对象(阵列),此矩阵可以容纳浮点值(单或双精度)、实数或复数值和布尔数据。以下是一个展示如何使用矢量化ArrayFire表示法利用蒙特卡罗估计表示π的值:创建两个向量样本(x,y),并计算有多少落在单位圆的一象限内。

enter image description here 图1 使用ArrayFire利用随机取样法估算π的值


ArrayFire的阵列式是多维度的,可以通过简单的矩阵生成函数例如(ones、randu等)生成,而且可以通过算法和函数进行操纵。另外,ArrayFire提供一条并行for循环工具——gfor——可以以并行数据的形式任意执行许多独立历程。更多细节和例子已经上传到网络上。



2.2例子:立体视差

enter image description here 图2 使用ArrayFire通过平面扫面和5-by-5相关窗口计算两个图像之间的水平差距。所有视差计算和最终最小值都是并行执行的,而且执行时保证源代码是简单且不被更改的,不需要深入到低级GPU的应用程序接口中。


在上方展示的简易例子中(图2)我们展示了两张图片之间立体视差的计算方式。这段代码可以在任何支持ArrayFire的设备上运行,而且由于不需要类似于CUDA或OpenCL的低级GPU编程API而保持了简明。ArrayFire通过使用平面扫描和5-5相关窗口实现水平差计算。所有差值计算与最终最小值都是并行执行的,且源代码可以保持干净简洁而不涉及到低级GPU应用程序编程接口。


程序是被逐行的描述的,left、right和sad的声明表明我们将使用4位浮点阵列而且left和right是我们已经获得的图像。我们假定所有阵列大小相同。我们还创建了核,一个单精度5-5滑动窗口(sliding 5-by-5 window)。


第二行利用gfor关键词表示了我们将并行运算一下模块从0到nshift共nshift+1次。所有后面的指令依然只读区一次,不过每条指令都将调用nshift+1次计算而不是只调用一次。因此,下一个指令将right图片移动一个像素、两个像素、以此类推,然后将结果(如果立刻编译并执行)作为把手(handle)储存在变量shifted中。剩下的命令行将在一个5-5的滑动窗口中计算两个图片之间的绝对差值的和。最后,就得到了所有计算所得绝对差值的和的最小值。需要注意的是在执行期间,Array Fire编译指令可以惰性编译,也就是说,前面提到的所有操作可以合并成一个GPU执行批次并派发给GPU。




3.惰性编译

ArrayFire使用了一种名叫惰性编译的技术(有时也被称为及时计算,Just-In-Time computation,JIT)用于尽可能提升用户程序的运行速度。这项正在申请专利的技术在保证了灵活性的情况下既可以在运行中生成计算设备代码又可以优化内存传输以达到最大流率。


在GPU上执行运算程序最简单的方法就是在用户输入/运行代码的时候在GPU上执行每个操作。这是可行的,而且可能加快运算速度,但并不是理论上最快的。


每当ArrayFire端口连接到GPU都需要耗费一些时间。除了计算实际耗费的时间外,设备之间通讯和GPU通讯同样会消耗时间。ArrayFire将追踪用户正在进行的计算并储存公式、输入值与最终结果,当需要执行命令时,ArrayFire将直接给出结果而不是再次进行计算以此来使第二次执行的速度更快。


考虑以下代码: enter image description here 在后台程序中,ArrayFire将建立这些部分表达式,但在实际计算任何设备代码时: enter image description here 在计算C之前I是否更改无关紧要,ArrayFire持续追踪输入源头,而你将总是得到正确答案。每当你需要C的值,它都将自动进行运算。由于对C的计算可以作为单个核进行批处理而不是把里面的每个式子都执行一遍,这种处理方式相对于把每一步都交给GPU处理一次来说节省了时间。ArrayFIre利用这些信息进一步优化更大图片的计算版本,否则一条一条执行操作将变得不可能。你能从其中得到的另一个优点是在你代码里运行计算了一个,你实际上永远不会使用的值时,ArrayFire可以直接跳过它。如果计算C所需要的内存开始不足或者计算过程开始变得极端复杂,ArrayFire也可以自行预计算C的一部分。




4.索引

ArrayFire提供了几种灵活高效的方法,用于将下标索引进数组。和C/C++、Python以及Fortran相同,Array Fire的下标也是从0开始的,即A(0)是第一个元素。索引功能可以通过以下方法的组合实现: ·整型标量 ·seq 表示线性序列 ·end 表示维度的最后一个元素 ·span 代表整个维度 ·row(i)或col(i)指定单行或单列 ·rows(first,last)或cols(first,last)指定行或列的跨度。


下标阵列索引举例: array A = randu(3,3); array a1 = A(0); //首元素 array a2 = A(0,1); //首行第二列元素


A(end); //最后一个元素 A(-1); //也表示最后一个元素 A(end-1); //倒数第二个元素


A(1,span); //第二行 A.row(end); //最后一行 A.cols(1,end); //除了第一列的全部


float b_host[] = {0,1,2,3,4,5,6,7,8,9}; array b(b_host,10,dim4(1,10)); b(seq(3)); //{0,1,2} b(seq(1,7)); //{1,2,3,4,5,6,7} b(seq(1,2,7)); //{1,3,4,7} b(seq(0,2,end)); //{0,2,4,6,8}


在考虑性能时,数组索引很重要。因为内存的移动与重排操作代价昂贵,很容易就会让对下标的索引操作吃掉你从其他地方利用快速运算获得的加速。与我们需要尽量避免利用下标访问标量值相反,下标可以表示整个向量或元素矩阵。数据是被按列以主顺序存储(与Fortran相同),因此我们建议以连续的跨度按列索引,例如调用一整列A(span,a),而不是分散访问,例如调用那些跳过元素之间内存的行A(2,span)。你可以在网络上找到更多例子。




5.图形

除了通用型计算之外,GPU也是最快最重要的图像处理器。基于这一事实,ArrayFire附带了免费的和用于商业用途的软件包。ArrayFire比较独特的一点是,他的图形引擎是在考虑了GPGPU的基础计算的情况下从头开始设计的:所有的原语都是从卡上的内存里提取。因此,所有的计算与可视化处理都由GPU处理,省去了在主机CPU与设备之间内存转换的步骤。让GPU去做那些他擅长的工作,比如并行数据处理和图像输出,而CPU则负责一系列计算和图像后端的定位。

enter image description here 图3 潜水模拟中场景的各个子视图。

图像包包含了几种基础绘图原语,其中有: ·2D与3D线性绘图 ·立体渲染 ·用于比较分析的叠加图 ·图像可视化 ·其他还有很多


图像后端的工作应该简单一些,这样你才能集中精力解决问题,而不是把精力花在OpenGL或多线程实现等这些问题上。比如要画出图三所示的图像,只需要以下几条简单的C++代码: subfigure(2,2,1); plot3d(A); subfigure(2,2,3); imgplot(A); subfigure(2,1,2); points(dx,dy,dz);




6.GFOR

ArrayFire提供仅用于GPU的并行数据循环关键词:gfor。在代码中用gfor代替标准for 循环对批进程数据做并行数据处理。比如,如果我们使用for循环计算几个矩阵连续相乘需要以下代码:

for(int I = 0; i<2 ;i++){ C(span,span,i)=A(span,span,i)*B; }


同样的三个矩阵相乘的运算,使用gfor可以一次完成而不是三次。

gfor(array i,2){ C(span,span,i)=A(span,span,i)*B; }


与前一个循环连续计算了每个矩阵乘法运算不同,后一个循环一次性完成了所有矩阵乘法运算。与之相同的,gfor可以直接用于其他类似的麻烦的并行代码。一个考虑gfor的好方法是将它视为一个语法糖(syntactic suger):gfor提供一个用于编写其他矢量算法的迭代风格。




7.多GPU互联

ArrayFire可以仅通过调用很少几条函数实现单GPU到多GPU互联的扩展配置。我们可以通过调用函数deviceset()来选择用来运算的GPU。此函数将给出允许调用ArrayFire的GPU的数量。为了同时在多个GPU上运行计算,我们将输入数据进行分块(如果必要)并将数据块分发给每个GPU。通过在循环中调用deciceset()函数来选择系统中的GPU并创建array对象可以实现上述目的。

enter image description here


然后是另一个循环,此循环调用快速傅立叶变换(FFT)函数对每个单独的数据块进行处理,所有运算过程都在系统中的各个GPU上并行运行。 enter image description here


ArrayFire同样提供同步函数sync(),此函数可以阻止主线进程直到所有其他设备结束等待中的所有函数调用。为了将数据返回给主机,我们运行另一个循环将数据传送给主机上的缓冲区。 enter image description here


如上所述,利用Array Fire中非常友好的API可以非常简单的将单个GPU扩展到多GPU并行。




8.基准

ArrayFire很快。它利用GPU的并行数据处理能力获得比其他已知的所有商业用途或免费的库更强大的性能优势。我们对Array Fire支持的大量功能进行了样本基准测试。所有曲线都表示吞吐量,更高的曲线则表示更好的性能。所有测试均在以下标准下测试: ·硬件:Intel i7 920, Tesla C2050 ·软件:ArrayFire 1.0, Intels MKL 10.3, Intels IPP 7.0, Eigen 3.0. enter image description here enter image description here enter image description here enter image description here enter image description here




9.总结

新的软件工具与基于GPU的高性价比电脑的出现,为研究技术问题的科学家、工程师和分析师开创了一个新的时代。这篇文章描述的ArrayFire平台为那些正在寻找利用GPU计算能力的非计算机科学家提供了更加高效的选择。ArrayFire是一个快速GPU矩阵库,可以用C/C++ 、Fortran和Python语言编写通用GPU计算程序。本文展示了Array Fire的简单的API,并描述了为何它能快速构造GPU运算应用程序。ArrayFire实用性的关键元素是一边进行文字描述一边利用实际代码举例。最后,我们的测试结果展示了ArrayFire提供了一种快速的GPU计算方法。




参考文献

[1] AccelerEyes. Addr.: 800 W Peachtree St NW, Atlanta, GA 30308, USA. URL: http://www.accelereyes.com.

[2] Andy Webb: “MATLABs Racing Jacket”. Automated Trader, vol. 16, no. 1, pp 54–61. 2010.

[3] AccelerEyes: “Jacket v1.7.1: Getting Started Guide”. URL: http://www.accelereyes.com/services/documentation

[4] Mark Harris, “Optimizing CUDA”. SuperComputing 2007 Tutorial, Reno, NV, USA. November 2007.

[5] V.Volkov and J.W.Demmel,“Benchmarking GPUs to Tune Dense Linear Algebra”. SC ’08: Proceedings of the 2008 ACM/IEEE conference on Supercomputing, pp. 1-11, Austin, Texas, USA, 2008.

[6] Torben’s Corner. Available at the Wiki of AccelerEyes at: URL:http://www.accelereyes.com/wiki/index.php?title=Torben’s_Corner.

[7] nVidia, “CUDA programming guide 1.1,” Available at http://developer.download.nvidia.com/ compute/cuda/1_1/NVIDIA_CUDA_Programming_Guide_1.1.pdf

[8] nVidia, “CUDA CUBLAS Library 1.1,” Available at http://developer.download.nvidia.com/ compute/cuda/1_1/CUBLAS_Library_1.1.pdf

[9] nVidia, “CUDA CUFFT Library 1.1,” Available at http://developer.download.nvidia.com/compute/ cuda/1_1/CUFFT_Library_1.1.pdf

[10] nVidia, “PTX: Parallel Thread Execution ISA Version 1.1”, Available at http://www.nvidia.com/ object/cuda_develop.html

[11] Buck, I., Foley, T., Horn, D., Sugerman, J., Fatahalian, K., Houston, M., and Hanrahan, P., “Brook for GPUs: Stream computing on graphics hardware.” Transactions on Graphics and Visualization vol. 23, no. 3, Aug. 2004.

[12] Tarditi, D., Puri, S., and Oglesby, J.. Accelerator: Using data parallelism to program GPUs for General- Purpose uses. In International Conference on Architectural Support for Programming Languages and Op- erating Systems (2006)

[13] McCool, M. and Toit, S.D., Metaprogramming GPUs with Sh. A K Peters, 2004.

[14] Mark, W.R., Glanville, R.S., Akeley, K., and Kilgard, M.J. “Cg: A system for programming graphics in a c-like language.” Transactions on Graphics and Visualization vol. 22, no. 3, pp. 896-907, 2003

[15] Matt Pharr, ed., GPU Gems 2, Addison-Wesley, 2005.

[16] Hubert Nguyen, ed., GPU Gems 3, Addison-Wesley, 2007.

[17] D. G ̈oddeke, GPGPU Basic Math Tutorial, tech. report 300, Fachbereic Mathematik, Universitt Dortmund, 2005



如何让客户体验成为呼叫中心团队运动

客户体验 (CX) 是所有成功呼叫中心的核心。您的员工是否作为一个团队协作以确保一流的客户服务?

自最近的健康危机以来,呼叫中心 CX 问题有所增加,这主要是由于更高的座席流动率。事实上,仅在 2021 年,代理流失率就飙升了 46%。随着呼叫中心继续建立他们的团队并为远程工作人员提供服务,营造团队环境至关重要。跨团队协作对于提高座席参与度和积极性以及确保客户始终对结果感到满意至关重要。

enter image description here

这就是为什么 CX 应该成为一项团队运动以及如何在您的呼叫中心创建这种环境的原因。

行业统计

采用跨团队方法和以客户为中心的公司几乎以两倍的可能大大超过他们的目标。

88%的员工表示断开的通信会对工作流程产生负面影响。

由于系统脱节,42% 的客户支持代理无法有效解决问题。

可以做些什么来创建团队环境来改进客户体验(CX)?试试这四种策略:

  1. 打破沟通孤岛

呼叫中心的工作人员很容易彼此断开连接,尤其是在不同部门之间或与一些远程工作的座席之间。

孤立的员工队伍可能会阻碍员工之间的协作。最终,这可能会导致进一步偏离以客户为中心并阻碍客户体验。目标是打破这些孤岛,培养更高效的团队合作,让所有员工作为一个团队参与提供卓越的客户服务。

促进团队成员之间更好的沟通使他们能够:

彼此保持一致,为客户提供更流畅的体验。

就解决问题和解决某些任务的方法进行头脑风暴。

从经验丰富的座席那里学习不同的客户成功策略。

为您的呼叫中心选择正确的SparkleComm统一通信平台可以更轻松地打破孤岛并促进协作。SparkleComm统一通信解决方案,为您的座席提供一个允许跨渠道协作和通信的集中式仪表板。

  1. 创造机会让整个团队参与进来

一些员工可能会觉得自己不在圈子里,尤其是那些远程工作并且没有现场座席的人。出于这个原因,为所有团队成员(即使是那些在场外工作的人)创造参与各种项目和计划的机会至关重要。

无论是培训、头脑风暴解决方案,甚至是派对策划,让每个人都参与进来可以创建一个更有凝聚力的员工队伍,让每个人都觉得与公司的使命和目标息息相关。最终,让所有座席都坐上 CX 火车让客户体验成为一项团队运动。

  1. 连接分支机构与呼叫中心

您的呼叫中心可能有一个处理前端呼叫和通信的前台,以及在主要呼叫中心工作的一组座席。在这种情况下,座席和前台员工协同工作,以帮助确保出色的客户服务,尤其是在呼叫量激增时。利用SparkleComm统一通信平台可以让分支机构和呼叫中心之间进行无缝转移从而优化溢出处理。

  1. 使您的技术现代化

正确的沟通平台可能意味着孤立的团队和有凝聚力的团队之间的区别。利用数字技术创建一个更具协作性的团队环境,促进座席之间的有效沟通和参与。

例如,SparkleComm统一通信是一种团队协作解决方案,可帮助呼叫中心组织和集中团队通信。它可用于创建交互式消息并允许用户将信息直接输入到消息中。

呼叫中心还可以使用SparkleComm呼叫中心工具构建定制的对话机器人来充当自动化代理,这些机器人可用于发送私人通知和自动化交互。SparkleComm呼叫中心解决方案还可以与项目管理工具集成,以管理和分配任务、在任务完成时发送通知、创建和共享事件和截止日期,以及创建和共享会议记录。

基于云的SparkleComm呼叫中心解决方案简化了有凝聚力的团队的发展

使用正确的工具可以更轻松地提供出色的客户支持并确保最佳的客户体验。基于云的SparkleComm统一通信软件可以简化使 CX 在您的呼叫中心成为团队运动的过程,并优化所有团队成员之间的沟通。使用 SparkleComm统一通信,您可以激励和吸引代理,并观察您的客户满意度得分在此过程中的上升。

人工智能改善座席体验的 7 种方式

您的座席在您的呼叫中心的参与度如何,他们多久发现自己被电话淹没?

让坐席在工作中保持快乐和充满活力对于避免座席流失至关重要。值得庆幸的是,有一些工具可以帮助确保积极的工作体验。人工智能(AI)是呼叫中心可以用来改善座席体验的关键工具。以下是支持 AI 的SparkleComm统一通信解决方案可以提供帮助的七种方式。

enter image description here

  1. 立即解决简单问题

座席始终可以在客户旅程的任何阶段帮助客户,但人工智能可以在现场座席参与之前很久就介入。当客户使用聊天机器人和虚拟助手等支持人工智能的自助服务工具时,可以立即解决简单的问题。

例如,寻找最近下订单更新的客户可以通过聊天机器人或虚拟助手轻松找到此信息,而无需与现场代理联系。

此外,简单的聊天机器人已经演变成高度复杂的虚拟代理,可以识别意图并快速提供准确的响应。如果问题变得过于复杂,这些虚拟代理可以将呼叫转移到具有上下文信息的实时代理。这确保了呼叫中心座席不再受到不必要和重复性呼叫的轰炸,使他们能够专注于需要更多实际帮助的高价值任务。SparkleComm虚拟座席还可以帮助节省呼叫中心的资金。

2.提供详细的客户信息

为了向客户提供最好的服务,座席必须在接到电话时尽可能多地收集有关他们的信息。SparkleComm呼叫中心解决方案的人工智能的好处之一是它可以在代理与呼叫者相关之前收集这些信息。

一旦呼叫者连接到实时座席,座席就已经可以访问所有必需的信息。借助可用的最新客户信息,座席可以立即提供出色的客户体验。

  1. 启动更复杂问题的解决流程

除了收集客户数据外,人工智能还可以帮助在幕后启动解决过程。虚拟助理可以分析客户的声音和书面评论,以了解他们正在寻找什么。然后,虚拟助手可以向座席建议一些潜在的解决方案,座席将实施他们的人工技能来确定哪个选项最适合每个特定客户。

这可以帮助减少通话时间并在SparkleComm通话中添加更加个性化的旋转,从而增强客户体验。

4.根据需要自动缩放

在较慢的时期,座席可能会受益于更轻松的工作环境。然而,当呼叫量激增时,当前安排的座席可能很快就会发现自己被查询压得喘不过气来。

随着人工智能的实施,呼叫中心可以根据需要处理尽可能多的呼叫,无论在任何给定时间有多少来电。无论是每小时 10 个电话还是 500 个电话,SparkleComm呼叫中心的AI 系统都可以管理它们。

支持人工智能的SparkleComm呼叫中心通信系统可以随着通话量的减少或扩大而调整,这在特别繁忙的时候减轻了座席的负担。

5.消除重复工作

根据最近的数据,呼叫中座席的流动率已经很高,平均每年有 30-45% 的座席被呼叫中心取代。对座席的刺激作用不大的重复性工作可能会导致座席流失率居高不下。

为了扭转这一趋势,让座席参与他们的工作是关键。这可以借助人工智能来完成,它可以用来自动解决单调的电话和任务,例如需要更新订单状态、退款等的任务。虽然人工智能负责这些任务,但座席可以参与需要更多解决问题技能的呼叫。这些电话可以刺激座席,帮助他们更多地享受工作时间,让他们保持参与和快乐。

6.提供实时培训和指导

人工智能可以参与座席和客户之间的整个沟通过程,为员工提供实时支持。例如,代理可以预先收到有关客户及其需求的相关信息,以帮助更快、更有效地解决问题。更好的是,SparkleComm呼叫中心的人工智能可以监听每个电话,并围绕同理心或积极倾听等软技能实时为座席提供行为指导,因此座席不仅知道该说什么,而且知道如何说,以确保获得最佳结果。

7.有效路由呼叫

呼叫中心充满了具有不同程度的经验和专业知识的座席。鉴于这一事实,将不同的客户路由到具有适当处理呼叫的知识和技能的座席是有意义的。

例如,更简单的查询可能会针对经验较少的代理,而更复杂的问题可能会针对经验丰富的代理。此外,人工智能和计算机分析可以帮助确定是否需要实时代理,甚至在呼叫被路由到代理之前。

随着时间的推移,人工智能在将客户匹配到合适的代理方面变得更好,从而可以更好地响应客户并提供更优化的体验。

支持 AI 的 SparkleComm呼叫中心解决方案改善座席体验

SparkleComm是支持人工智能的基于云的呼叫中心解决方案,为呼叫中心提供了改善座席体验、提高客户满意度和增加利润所需的创新。SparkleComm呼叫中心解决方案提供的基于 AI 的功能可以简化呼叫中心座席的工作并提高座席保留率。

如何在 2022 年降低 IT 成本并最大限度地提高软件投资回报率

IT 团队一直在为一项不可能完成的任务而苦苦挣扎:为他们的公司找到合适的工具,同时将成本保持在最低水平。不仅有无穷无尽的设备和应用程序需要了解,而且业务需求也会随心所欲地改变。

再加上迫在眉睫的经济衰退的可能性,您将拥有一个 IT 预算减少且领导者希望最大化其现有投资的环境。我们保留哪些工具?我们可以投资哪些?

鉴于市场的不确定性,许多 IT 领导者开始重新评估他们的技术堆栈。挑战在于以前所未有的方式控制成本并最大限度地提高投资回报率。问题是,怎么做?

enter image description here   优化 SaaS (软件即服务)支出的投资回报率

整合是 2022 年的游戏名称。它通过减少云应用程序、物理服务器、台式电脑和各种基础设施的数量来帮助企业降低成本。整合也完全符合公司的 ESG (环境、社会、公司治理)战略,因为更少的 IT 设备产生的碳更少并有助于降低电费。 

最终,目标是帮助您的企业减少在 SaaS 上的支出,同时不牺牲您保持竞争力所需的关键任务工具。让我们看看一些常见的 SaaS 支出超支,以及如何在 2022 年及以后最大化您的 IT 预算。 

  开始应用程序合理化过程

简而言之,应用程序合理化是确定您应该保留哪些应用程序(以及哪些需要停用)或整合的过程,因为您有重叠的功能。 

请记住,应用程序合理化不仅仅是快速审核您的业务应用程序。它正在考虑 SaaS 堆栈中每个工具背后的逻辑和推理。 低效和过时的工具存在于每家公司的技术堆栈中,这已不是什么秘密。通过应用程序合理化,您不仅可以识别过时的工具,还可以根据您的业务需求确定哪些软件投资最有价值和最全面。 

这不仅与您使用的工具有关,还与您首先使用它们的原因有关,以及是否可以将它们替换为您已经付费的其他供应商的工具堆栈。 

第 1 步:全面了解您当前的软件堆栈

合理化您的 SaaS 应用程序组合首先要准确了解您所支付的费用、您拥有的用户数量以及他们使用该软件的能力。 

这意味着对以下信息有清晰的了解并实时更新:

您企业中所有现有的活跃 SaaS 工具

订阅频率(每月、每年等)

每个产品中包含的功能(使用的功能和未使用的功能)

您在每种产品上的花费(每月和每年)

所有软件许可证持有者(活动和非活动许可证)

每个使用过的SaaS 产品的核心功能——这会给您的团队带来什么价值?他们为什么要使用它?它解决了什么痛点?

您离不开的关键应用程序(即电话SparkleComm视频会议等) 

自动续订日期

所有产品的定价结构和续订条款

任何最低使用等级、产品使用等级或每月最低要求

步骤 2. 为您的供应商提供价格和功能图表

您是否知道每年有超过400亿美元用于未使用的 SaaS 工具?这是真的。公司在过时、未充分利用和重复的 SaaS 工具上浪费了数十亿美元。

一旦为每个 SaaS 供应商列出了第 1 步的信息,就可以将它们绘制成图表了。您的公司可能会使用多个执行相同工作的程序,或者为没人使用的软件付费。

  第 3 步:合理化您的 SaaS 投资

使用一些指导原则来帮助您合理化继续支付哪些订阅以及取消哪些订阅。 

拥有订阅中包含的 SaaS 功能的自上而下视图将帮助您解决功能重叠问题并查明重复订阅,从而确保更有效地使用 SaaS 支出。 

例如,SparkleComm统一通信这一个软件就包括高级电话视频会议、团队消息传递、即时通讯、电子邮件、网络研讨会、数字白板、会议室功能等,您可以取消其他零碎的软件了。

了解许可证持有者可帮助您识别和防止过度许可。在大型企业中,通常会有不再为公司工作的人员自动更新许可证,或者类似地,在不需要该产品的部门中使用不足的许可证。您应该只为员工实际使用 的基于云的软件付费。

了解所有续订日期和帐单详细信息可帮助您避免意外帐单。

第 4 步:消除重复和过时的 SaaS 应用程序

与每个部门的主要利益相关者坐下来,了解您的 SaaS 使用的当前状态。确定您绝对需要哪些产品,哪些可以淘汰。在某些情况下,您可能会整合 SaaS 服务。此策略将立即消除大部分 SaaS IT 预算浪费。

  使用 SparkleComm统一通信 花费更少,节省更多 

SparkleComm不仅仅是云呼叫。通过集成即时通讯、电子邮件、团队消息、视频会议、网络研讨会、白板、房间和呼叫中心SparkleComm为所有通信提供单一应用程序。 

我们将呼叫、消息传递和与员工、客户以及介于两者之间的每个人的会议统一起来。您可以从任何地方在任何设备(PC、智能手机、平板电脑、桌面电话)上访问该应用程序。

SparkleComm还采用开放式结构,可以灵活的集成应用,可以方便的与现有或者第三方的应用集成。如工作流、团队协作、OA系统、企业邮箱、微信等。我们通过强大的 IT 和业务线分析使决策变得容易,从而更有效地运营您的业务。

所以这就是SparkleComm,它提供更简单的沟通方式,最大限度地提高投资回报率,以便您轻松经营和发展业务。

成功进行SparkleComm视频会议的 11个最佳技巧

视频通话是许多人工作习惯的重要组成部分。SparkleComm视频服务对于与远程同事交谈、安排会议和协作工作非常有用。它在想要在线见面并了解最新消息的朋友中也很受欢迎。 

我们研究了一些关于如何成功进行SparkleComm视频会议的最佳技巧,无论您是为了商务还是娱乐。

enter image description here

添加虚拟背景

经常有一个凌乱的家庭办公室并且不热衷于整理它?虚拟背景功能可以为您省去麻烦。如果您的 PC 足够强大,或者您身后有绿屏,它可以将您想要的任何内容添加到SparkleComm视频通话的背景中,从太空时代的风景到宜人的海滩位置。

 切换到纯音频呼叫

有时,生活可能有点太疯狂了,无法在工作时播放视频,或者您可能想减少带宽并仅进行一段时间的音频通话。要在首次加入会议时始终默认关闭视频,请转至设置>视频>加入会议时关闭视频。参加SparkleComm视频会议后,您可以选择重新打开视频。当您需要快速拨打电话时,它是完美的选择。 

练习良好的声音礼仪

良好的会议礼仪很重要。并非会议中的每个人都想听到您家庭生活的每一个微小细节。特别是如果您的宠物、孩子或其他亲人在会议期间容易走进来,请在您不说话时将麦克风静音。在大型会议中,这是一个巨大的帮助,因此与会者不会被背景噪音淹没。如果可能,请使用耳机而不是计算机的扬声器。对于您和SparkleComm视频会议中的其他人来说,音频质量会更好。 

修饰你的外表

与其他基于相机的应用程序一样,能够稍微修饰您的外观,使您的图像看起来更柔和,总体上更好一点。转到设置>视频>修饰我的外观以快速提升。你的脸会看起来更柔和,它会产生微妙但重要的差异。虽然它不是一个奇迹创造者,但请确保你看起来仍然相当不错!

记录您的通话

如果您想查看您的会议或与错过的人分享通话,您可以非常轻松地录制您的SparkleComm视频会议聊天。如果您有SparkleComm的基本版本订阅,您可以选择将视频文件存储在本地或者保存到云存储。提供SparkleComm设置起来不需要太长时间。

创建定期会议

每周有定期的工作会议吗?还是每月与朋友相聚?您可以通过单击SparkleComm,然后选择重复会议旁边的框,轻松地将会议设置为重复。当您想定期安排会议但又不想每次都设置会议的麻烦时,它是完美的选择。

设置提醒

担心你会忘记你的许多会议?转到“设置”>“常规”,您可以在此处单击提醒,以便在会议即将开始之前始终收到通知。将其设置为 5-10 分钟,以便您有足够的时间准备出发。

在需要时共享您的屏幕

无论您是从工作同事那里获得建议,还是想与朋友分享一些很酷的东西,了解如何分享您的屏幕都会很有用。单击SparkleComm应用程序上的共享屏幕按钮。如果您正在查看其他人的共享屏幕,您可以通过单击查看选项和注释轻松对其进行注释。

使用专业帐户

SparkleComm免费帐户非常有用,但 SparkleComm的付费帐户意味着您可以做更多事情,例如与他人共同主持会议、在会议后创建与会者列表,甚至预先设置表格以了解有关与会者的更多信息。如果您需要更多功能,则值得拥有一个 SparkleComm帐户,即使是一小会儿。要升级,请单击您的个人资料图标,然后选择升级到专业版。

使用密码保护您的会议

确保大多数会议的安全很重要。对于任何类型的私人会议,请确保打开密码保护。当您创建新会议时,请转到您的个人会议 ID 设置并单击需要会议密码,以确保除非您愿意,否则没有人可以访问您的会议。

使用对焦模式

聚焦模式是SparkleComm视频会议的一种低干扰选项,旨在帮助会议参与者专注于任务。当它处于活动状态时,主持人仍然可以看到每个人的屏幕。但是,参与者只能看到他们自己、主持人以及领导选择“聚焦”的任何人的屏幕。