Leading the innovation and development of the industry with strength, what did cloud measurement data do right?

For the whole artificial intelligence industry, there is a great demand for AI technology in the fields including driving, security, finance, industry, medical care, education, etc. The rapid development of AI technology based on machine learning depends on the richness of the underlying big data, and a powerful model needs a data set with a large number of samples as its foundation. The quality and diversity of data will have a significant impact on the success or failure of algorithm models. The delivery of high-precision AI data not only helps the AI industry to land in scenes, but also brings a better user experience.

At the data level, with the development of AI technology, the data scale is constantly improving. According to IDC’s calculation, the global data scale will reach 163ZB; in 2025; At the same time, the AI data service industry has entered the stage of deep customization, and the service of data customization is carried out according to different scenarios and requirements, and the AI data requirements also transition from general simple scenarios to personalized scenarios.

In order to solve the practical problem of AI industrialization, cloud measurement data summed up many experiences and solutions, and used them in practice to help the development of the whole artificial intelligence scene application. Through its own technology, it has overcome the difficulties, designed scientific and standardized data processing processes from task creation to final acceptance, and flexibly met the diverse and high-precision data needs of customers. It has successively launched products and services such as "data scene laboratory", "AI data set management system" and "cloud measurement data annotation platform", providing high-quality, scene-based and large-scale processing of perceived data for many AI-related enterprises such as intelligent driving, smart city, smart home, smart finance and new retail.

Of course, it is not easy to keep the leading position of technology and industry in the tide of artificial intelligence. From the perspective of attack and exploration, it is not difficult to see that the reason why cloud measurement data can become an industry leader is not only due to the toughness of technology and product strength, but also the homeopathic development of service model and service concept, thus continuously injecting new vitality into the artificial intelligence industry and providing new kinetic energy for development.

First of all, data came into the market when the industry was on the rise, and the cloud measurement data with the first-Mover advantage was not satisfied with the dividends at that time, but constantly increased the technical input and improved the production efficiency by improving the technical level. Give full play to the power of "underlying technology+service capability" and provide end-to-end training data service solutions in autonomous driving, smart home, smart city and smart finance and other industries.

At the same time, cloud measurement data keeps forward-looking forecast on the development trends of hot industries and technologies, and prepares relevant tool chains and data service capabilities in advance to ensure adequate preparation to meet new AI data requirements. In the current AI data industry chain, there is a keen discovery of cloud measurement data, and there is still a lack of a systematic data solution for AI engineering. However, this systematic data solution for AI engineering is needed by many industries. In this context, the cloud measurement data industry launched a new generation of data solutions for AI engineering, which was undoubtedly a timely rain for many industry customers and solved their actual needs.

For this reason, cloud measurement data has launched a new generation of data solution for AI engineering. Through the mature data management and labeling platform, this solution can complete system integration with enterprises, support enterprise-defined pre-labeling, algorithm interface, personnel management, project management system and secure delivery of software and hardware support. Under the labeling environment that ensures data privacy and security, it highly supports the efficient circulation of data required by enterprises, continuously performs data processing tasks, and improves the large-scale production efficiency.

For example, in the field of automatic driving, it can realize Data cleaning and labeling in the data closed loop of DataOps (that is, the combination of data and Operations) of automobile enterprises, and improve the circulation efficiency by 2 times compared with the original process; In the aspect of retail goods inspection, through the cloud measurement data labeling platform, the container inspection data continues to flow back, and visual review and modification are carried out based on the pre-labeling results of the algorithm, which improves the efficiency by 3 times compared with manual labeling.

"Walk alone fast, go far". In the era of industrial intelligence, we can’t just rely on one enterprise to fight alone. The double value of industry and society will produce compound interest effect. Cloud measurement data also knows this well. It is also actively promoting the standardization of artificial intelligence data industry, and has participated in the compilation and release of "Requirements and Methods for Marking Point Cloud Data of Intelligent Networked Car Lidar" and "Requirements and Methods for Marking Image of Intelligent Networked Car Scene Data", contributing experience and wisdom to industrial intelligence, and promoting the construction of standardization system in the vertical field of AI data service. In addition, it also participated in the first series of standards of "Model/MLOps Capability Maturity Model", which filled the gap of the development and management standards of machine learning projects at home and abroad.

Summary:

As the vanguard of artificial intelligence data services, cloud data is actively promoting the accelerated development of AI training data services, contributing experience and wisdom to industrial intelligence, thus becoming a new paradigm of industry development. I believe that next, cloud measurement data will continue to improve. While continuously enriching its own service capacity building and deep cultivation technology, it will maximize the value of training data and deliver more excellent data support for artificial intelligence scenes.

2023 Shanghai Civil Service -Summer Class Course Shiner

2023 Shanghai Civil Service Summer Class

01

Summer series

Suitable object

(1) Zero foundation, candidates who are relatively weak in Shanghai civil servants’ examinations

(2) In the preliminary examination, I hope to focus on training during the summer vacation to quickly improve the ability to take the test

(3) Xiaobai, candidates who are committed to the post of civil servants for freshmen

(4) Candidates who need to follow, guide, and urge the test ability to improve the ability to improve the ability to improve

Form of class

Famous teachers of Huazhi, concentrated training, face -to -face teaching, classroom interaction, and on -site questioning and services to make students experience better.

Series features/highlights

· Scientific planning

Make full use of the summer time to reasonably plan courses, and choose courses scientifically to maximize the effect of learning in a limited time.

Construction framework

Understand the essence and answer methods of each type of question, establish a complete knowledge system, and avoid moving hard.

· Comb

Reading, careful investigation, and comparison of outlines, carry out key knowledge, conduct carpet -style review, and fully familiarize with the test content.

·Filling in the gaps

Help students find vulnerabilities or symptoms, provide targeted suggestions, and timely check the leakage.

· Focus on refining

Grasp the "key points", break each, make full use of the summer follow -up learning, and establish a diversified knowledge system.

· Consolidate review

Strengthen the exercise simulation questions, real questions, and prediction questions, and consolidate the content of what they have learned.

02

Weekend series

Suitable object

(1) Candidates who are weaker in Shanghai Civil Service Examination

(2) In the preliminary examination, candidates who have not learned much about the Shanghai civil servant exam

(3) Candidates who want the system to review and improve a comprehensive improvement

(4) Candidates who need to write a full -process system for writing or interviews, and hope that candidates who have bonuses and protocol guarantees

(5) Students who need to follow, guide, and urge the test ability to improve the ability to improve the test.

Form of class

Opposite the offline: Facing teaching, classroom interaction, questioning and services on the spot, making students experience better.

Series features/highlights

Learn through

Offline Huazhi senior teachers have taught the skills and strategies of admitting the skills and strategies to learn the theoretical skills and lay a solid foundation.

· Practice

Provide a sufficient quantity to preserve questions, consolidate high after class, and practice the questions.

Test

Simulation simulation exams, you can practice, calm, and stable test room mentality.

· Separate teaching

Basic-Title Sea-Sprint-Interview, Stage Learning, layer up, strength prediction.

· Science learning

Consolidate the basic mastery method+sprint knowledge large combing+pre -test training.

· Answer

Follow -up questions, questions and answers, questioning questions, questioning of classrooms, questioning after class, assignment questions, all efficiency guarantee within 24 hours;

Chief

Huazhi senior teachers have been taught in person to help learn more.

Those who have a positive infection in Shanghai today have three emergency measures to implement three aspects

At 5:00 pm on June 26, the Shanghai Municipal Government News Office organized a press conference of the 218th press conference of Shanghai New Crown Pneumonia’s epidemic prevention and control work. Zhao Dandan, deputy director of the Municipal Health and Health Commission, Lai Xiaoyi, a second -level inspector of the Municipal Commerce Commission, Long Wanli, deputy head of Jing’an District, Zhang Yefang, deputy head of Fengxian District, and Sun Xiaodong, deputy director of the Municipal Centers for Disease Control and Prevention, attended the relevant situation and answered questions from reporters. Essence Municipal Government spokesman Yin Xin presided over a press conference.

Some reporters asked, how many medium -risk areas are there at present in Shanghai? After a lapse of a few days, there is a sporadic infection in Shanghai. Can you do some analysis for the current epidemic situation?

Zhao Dandan said that as of now, there are 13 areas of risks in the city in the city, involving Xuhui, Baoshan, Songjiang, Yangpu, Hongkou, Putuo, Jing’an, Minhang, Fengxian, etc. Risk -regional. In this way, since 0:00 on June 27, there are 12 central risk areas left in Shanghai.

After 5 consecutive days in Shanghai, there were no social positive infections, and there was a sporadic positive infection today. It should be soberly realized that the transmission of Omikon’s mutation is fast and hidden. As the current flow of personnel gradually increases, the risk of rebound in the Shanghai epidemic still exists. Therefore, we must adhere to the total policy of "dynamic clearing zero", strictly implement the "four -party responsibility", and focus on implementing three aspects of emergency response measures:

First, in terms of command systems, the city and district -level command systems have always maintained a stress state. After discovering positive infections, they must respond as soon as possible, and respond to emergency response in a timely manner to block the spread of epidemic as soon as possible.

Second, in terms of discovery mechanisms, constantly improved the convenient and sensitive discovery mechanism, established and improved the comprehensive monitoring system of "nucleic acid+antigen", "place code+digital sentry", "hot kidnapper+pharmacy" Early discovery, early report, early disposal.

Third, in terms of the synergy mechanism, maintaining the collaboration between the public security, public health, industrial information, and big data centers and districts. Once those who are positive are found, they will immediately implement the "2+4+24" requirements, that is, the flow team is 2 hours. Arrive at the scene, complete the core information of the flow tone within 4 hours, and initially check the basic situation and complete the flow report within 24 hours.

Here, the friends of the general public are invited to continue to adhere to the "three -piece set" and "five more", and to do the following:

The first is to keep in mind the "two musts", that is, the code must be scanned, and nucleic acid detection must be performed as required.

The second is that in the face of the influence of the epidemic prevention personnel, we should fulfill the responsibility of epidemic prevention and truthfully inform the event trajectory and other information. We will protect your privacy.

Third, once suspicious symptoms such as fever occur, be sure to do personal protection and go to the nearest clinics in time.

Archsummit direct hit | Build a smooth natural flutter page

Instructors

Amoy Technology Department | Leisure Fish Technology | Cloud

"Fully strengthening the flutter fluidity, sharing challenges, online monitoring tool construction, optimization means to precipitate in component containers, and finally optimized advice."

Zhang Yunlong (cloud from), idle fish client experts.Since Netease, byte, Ali is running. At the current Department of Alibaba, there are currently responsible for idle fish APP packages, fluidity, start-up equation experience.

Outline

This sharing revolves around FLUTTER fluidity, respectively: 1.Flutter fluidity optimization challenge; 2. List container and flutterdx component optimization; 3. Performance measurement and devTool extension; 4.Fltter sliding curve optimization; 5. Performance optimization suggestions.

FLUTTER fluency optimization challenge

Business complexity challenge

FLUTTER has always been known by everyone, and the list controls displayed by Flutter Gallery (shown in the left) is indeed very smooth. But the actual business scene (shown on the right) is more complex than the Gallery list demo:

  1. Same card, more and complex (such as rounded) view control;

  2. When the list scroll, there are more view logic, such as scrolling control of other controls and disappearing;

  3. Card controls, there are more business logic, such as a different label, activity price, etc. based on background data, and there is also common business logic, etc.

  4. Because idle fish is an e-commerce app, we need to have certain dynamic capabilities to deal with frequently changed activities. Here we use the Flutter Dynamicx components of Ali to implement our dynamic capabilities.

Framework challenge

Let’s look at the overall flow of the list, here only pay attention to the free scroll phase after the finger is released.

  1. When the finger is released, the initial speed is calculated based on ScrollDragController.end;

  2. UI Thread requests RequestFrame to Platform Thread, and calls BegInframe to UI Thread at Platform Thread.

  3. The UI Thread Animate phase trigger list slides a little distance while registering the next frame callback to Platform Thread;

  4. Ui Thread Build Widget, generate / update the renderObject tree through the three tree DIFF algorithm of Flutter;

  5. UI Thread RenderObject Tree Layout, Paint Generates an Scene object, and finally passed to Raster Thread to draw on-screen;

The above flow must be completed in 16.6 ms to ensure that the frame cannot be guaranteed. Most of the cases, there is no need to build a new card, but when the new card enters the list area, the entire calculation amount will become huge, especially in complex business scenes, how to ensure all calculations within one frame of 16.6ms, Is a small challenge.

The figure above is a sliding devTool sample, and the Carton stage occurs when the new card is on the screen, and the other phases are very smooth, because the scrolling speed is attenuated, so the carton interval is also getting bigger. Because most of the time is very smooth, the average FPS is not low. However, the new card is built at the time of production, which gives us a stylish body feeling.

Challenge of dynamic capabilities – Flutter Dynamicx

The free fish APP card uses the self-developed Flutter Dynamicx to support our dynamic capabilities. Basic Principle: Online Edit Layout DSL, generate DX files and send it. The end side generates the DXComponentWidget by parsing the DX file and combines the back card data, and finally generates Widget Tree. FLUTTER DYNAMICX technology brings dynamic update capabilities, unified monitoring capabilities (such as dxcomponentwidget monitoring cards), good research and development insecurity (online DSL and Android Layout, and optimize Android), online editing capabilities;

But in performance, we also pay a certain price: DX cards add time to the template loading and data binding overhead, Widget wants to recursively create through WidgetNode traverses dynamically, and the view nesting layer will be deeper (followed by later).

Description: Flutter Dynamicx Reference Ali Group DSL Rules Realization

User’s sense of physical challenge

I have already described above, and the card in the FLUTTER list is more obvious.

When Android RecycleView occurs, the physical feel is not obvious, and the FLUTTER list has occurred when the card occurs, not only the time pause, but also a hopping on the OFFSET, and the physical feeling of small card is also changed. It is obvious;

Suppose the list content is simple enough, scrolling does not happen, we also found that the Flutter list and Android RecycleView are not the same:

? Use ClampingscrollPhysics to feel the feeling of similar magnets when the list is stopped.

? Use BOUNCINGSCROLLLPHYSICS, the list is started, and the speed attenuation is faster;

On the 90Hz machine, the early flutter list is not smooth, the reason is that the touch sampling rate is 120 Hz, and the screen refresh rate is 90Hz, causing partial screens to be 2 touch events, part is a 1 touch event, last Resulting in rolling OFFSET effects. When the Flutter 1.22 version, RESAMPLINGENABLED can be used to re-sample the touch event.

List container and flutterdx component optimization

Telling the challenge of Flutter fluidity optimization, now share how you optimize the smoothness and precipitate into PowerScrollView and Flutter Dynamic components.

PowerScrollView design and performance optimization

PowerscrollView is a snarefish team’s self-developing Flutter list assembly, with better packages and supplements on the Sliver Agreement: Data increased deletion, complement local refresh; layout, supplemented the waterfall flow; incident, supplement the card on the screen , Away, scrolling events; control, support for scrolling to Index.

In terms of performance, the waterfall flow layout optimization, local refresh optimization, card division optimization, and sliding curve optimization.

PowerScrollView Waterfall Flow Layout

PowerScrollView Waterfall Flow Layout provides longitudinal layout, lateral layout, mixed arrangement (transverse card and ordinary card mix). Nowadays, most of the listings of the hiped fish are available in PowerScrollView’s waterfall flow layout, such as the home page, search results page, etc.

PowerScrollView Waterfall Flow Layout Optimization

First, through conventional cache optimization, cache each card upper corner X value and which column belonging.

Compared to the Slivergrid card into the list area, the waterfall flow layout, we need to define Page, card admission to create and leave the field destruction need to be units. Before optimization, Page calculates cards in a screen visual area, and in order to determine the starting point Y value of Page, the primary layout needs to calculate the Page N and N + 1 two pages, so the amount of cards involved in the layout calculation is much lower, and the performance is low. After optimization, the approximation of all card height averages calculates Page, which greatly reduces the number of participating in the layout card, and the number of cards destroyed by Page also becomes less.

After the column cache and paging optimization, use the idle fish Self-developing Benchmark tool (follow-up) to compare the waterfall flow and GridView, view the number of frames and the worst frame consumption, can find that performance performance is basically consistent.

PowerScrollView local refresh optimization

Leisure fish products expect users to browse products more smooth, will not be loaded by loadmore, so the list is required to trigger LoadMore during scrolling. FLUTTER SLIVERLIST When the LOADMORE supplement card data, the List control is tender, and the slterlist building will destroy all cards and recreate it, and the performance data can be imagined very bad. PowerScrollView provides a layout refresh optimization: all cards on the cache screen, no longer recreate, ui thread Optimize from the original 34MS to 6MS (see the lower left picture), the right image is viewed by Timeline, the depth and complexity of the view built Optimize.

PowerScrollView card fragmentation optimization

The second figure 2 card is the early search results page of the idle fish, and it is not a waterfall flow. To view the Timeline chart when the card is created (adding DX Widget creation and PerformLayout overhead), you can find that the complexity of the card creation is extremely large. On the normal mid-range machine, the UI Thread consumes more than 30ms, to be optimized to 16.6ms It is very difficult to use routine optimization. For this purpose, two cards can be disassembled, and each frame is used to render.

Directly see the source code, the basic idea is to mark the card widget, when the card is true, the right card first _BuildPlaceHoldercell builds the Widget (empty Container), and register the next frame. In the next frame, the right card is modified with NeedShowRealcell for True, and self-laminate, and then build real content.

Is it delayed to build a true content of the card, will it affect the display content? Because the FLUTTER list has a cacheextends area on the visual area, this part of the area is not visible. In most scenarios, users don’t see the scene of the blank card.

Also using the FLUTTER BENCHMARK tool to perform performance test, you can see 90 points before and after the card division, 99 packet consumption has a significant downgrade, and the number of lost frames is also reduced from 39 to 27.

Note Here, when listening to the next frame, you need widgetsbinding.instance.scheduleframe to trigger the RequestFrame. Because when the list is displayed, it is possible because there is no callback from the next frame, resulting in the task of the delay display queue, eventually makes the first screen content display is incorrect.

Delayed framing optimization ideas and suggestions

Comparison of Flutter and H5 design:

  1. DART and JS are single-threaded models that need to be sequenced and deserialized across threads;

  2. Flutter Widget is similar to H5 VDOM, there is a DIFF process.

Early Facebook In React Optimization, the Fiber Architecture is proposed: Based on the VDOM Tree’s Parent Node → Sub-node → Brothers Node → Sub-node, the VDOM Tree is converted to the Fiber data structure (chain structure), and the reconcile phase is implemented. Interrupt recovery; based on the Fiber data structure, the control section continues in the next frame.

Based on React Fiber thinking, we propose its own delayed framing optimization, not just left and right card size, further, render content disassembled as the current frame task, high-excellent delay task and low delay tasks, the upper screen priority is sequentially changed Low. Where the current frame task is the left and right white Container; the high-optovel delay task is exclusively frame, where the picture portion also uses Container placeholders; in the idle fish scene, we dismantled all DX image widget from the card, as low as low Excellent delay tasks and is set to no more than 10 in one frame consumption.

By disassembling the 1 frame display task to 4 frames, the highest UI on the high-end machine will be optimized from 18 ms to 8 ms.

Description 1: Different business scenes, high-yogle and low-probing task settings have different description 2: Slide on the low-end machine (such as Vivo Y67), the sub-frame scheme will let the user see the list whitening and content Upable process

FLUTTER-DYNAMICX Component Optimization – Principle Explanation

Edit the "Class Android Layout DSL", compile the binary DX file. The end side is downloaded, loaded, and resolved, and the WidgetNode Tree is generated. See the right figure.

After the business data issued in the background, the Widget Tree is generated by recursively traversing WidgetNode Tree, and finally appears.

Description: Flutter Dynamicx Reference Ali Group DSL Rules Realization

FLUTTER-DYNAMICX Component Optimization – Cache Optimization

I know the principle, it is easy to discover the flow in the red box in the picture: binary (template) file parsing load, data binding, Widget dynamic creation has certain overhead. To avoid repeated overhead, we have cached DXWIDGETNODE and DXWIDGET, and the blue selection code shows the Widget cache.

FLUTTER-DYNAMICX Component Optimization – Independence ISOLATE Optimization

In addition, the above logic is placed in a stand-alone ISOLATE, and the maximum amount is lowered to the lowest. After the line technology grayscale AB experiment, the average carton bad frame ratio is reduced from 2.21% to 1.79%.

FLUTTER-DYNAMICX Component Optimization – Hierarchical Optimization

FLUTTER DYNAMICX provides class Android Layout DSL, adds Decoration layers to implement each control Padding, Margin, Corner, adds the Decoration layer; to implement the DXContainerRender layer. Every layer has its own clear duty, the code level is clear. However, since the increase in 2 layers caused the Widget Tree hierarchy, the DIFF logic of 3 trees became complicated and the performance becomes low. To do this, we merge the Decoration layer and the DXContainerRender layer, see the middle Timeline diagram, which can be found that the optimized flame grading and complexity becomes low. After the line technology grayscale AB experiment, the average carton bad frame ratio is reduced from 2.11% to 1.93%.

Performance measurement and devtool extension

Tell the optimization tool, which is described here to make a measure of how to measure, and the build / extension of the tool.

Offline scene – Flutter BenchmarkWhen the FLUTTER is detected, the calculation consumption on the UI Thread and Raster Thread is required. So the Flutter optimizes before and after comparison, using the time consuming data of the UI Thread and Raster Thread of each frame.

In addition, the fluency performance value is affected by the operating gesture, the scrolling speed, so the error based on the measurement results of manual operations will have errors. Here, use the WidgetController control list control FLING.

The tool provides the interval between the scrolling speed, the number of scrolls, the scroll, and the like. After the scrolling test is completed, the data is displayed by the UI and Raster Thread frame, 50 points, 90 points, and 99-positioned frame consumption, and give performance data from a variety of dimensions.

Offline scenario – Based on the recording screen

Flutter Benchmark gives multi-dimensional measurement data at the Flutter page, but sometimes we need a horizontal comparison competition app, so we need to have a tool transverse to more different technologies. The idle fish is self-developed in the Android side to self-developed the recording screen data. Imagine the mobile phone interface into multiple screens, get the screen data (byte arrays) (byte arrays) by sending VirtualDisplay, interval 16.6 ms, using the Hash value of the byte array represents the current picture, the current 2 The Hash-read hash value is unchanged, and the Carton is considered.

In order to ensure that the fluency detecting tool app itself does not have a carton, it is read, which is compressed, and the compression ratio on the low-end machine is higher.

Through the detection of the tool without invading, a rolling test can be detected, the average FPS value (57), the frame distribution is variance (7.28), 1S time, the large number of large cards (0.306), large card cumulative time (27.919). Intermediate array display frame distribution: 371 represents the number of normal frames, 6 generations 16.62ms of small cardon quantity, 1 generation 16.63MS quantity.

Here is the definition of the big Carton: Carton, greater than 16.6 * 2 ms.

Offline Scene – Performance Detection Based on DEVTOOL

In addition, the scenes of the idle fish are also extended DevTool. In a Timeline map extended time-consuming, greater than 16.6ms red highlight, convenient development.

Online scene-Flutter high available detection FPS implementation principle

Online scene, idle fish self-developed Flutter high available. The basic principle is based on 2 events:

  • Ui.window.onbeginframe event

    • Engine notifies the VYSNC signal arrival, notify UI Thread to start preparing the next frame building

    • Trigger schedulerbinding.handlebeginframe callback

  • Ui.window.ondrawframe event

    • Engine Notification UI Thread Start Draw Next Frame

    • Trigger schedulerbinding.handledrawframe callback

Here we have recorded a frame start event before the Handlebeginframe processing, and the end of the frame is recorded after HandledrawFrame. Each frame here needs to calculate the list control offset value, and the specific code implementation is implemented. When the entire accumulated exceeds 1, executes a calculation, filtering out the scene without scrolling, calculates the FPS value using each frame.

Online Scene – FlutterBlockcanary Line Stack Stack Detection

After using Flutter high available to get the online FPS value, how to locate the stack information, you need to collect stack information. Free fish collects carton stacks using the self-developed Flutterblockcanary. The basic principle is that the signal is transmitted in the C layer, such as 5ms once, each signal receives the Dart Ui Thread stack collection, the resulting series of stacks are aggregated, and the same stacks in a row are considered to have occurred in Carton, this This stack is the stack of Carton we want.

The following figure is the stack information collected by Flutterblockcanary, and the middle framefpsRecorder.getscrolloffset is a Carton call.

Online scene – FlutterBlockcanary Detects overreservation

In addition, FlutterBlockcanary also integrates over-rendering detection capabilities. Replace the Buildowner object by replying widgetsflutterbinding, replacing the buildowner object, and rewrive the ScheduleBuildFor method to intercept Element. Based on the dirty ELEMENT node, extract the depth of the dirty node, the number of direct child nodes, the number of all child nodes.

Based on the number of all child nodes, in the idle fish details page, we are positioned to the "Quick Question View" during scrolling, and the number of transes and all child nodes are too large. View the code, positioning the view hierarchical level, by sinking the view to the leaves node, the number of stasible Build nodes is optimized from 255 to 43.

FLUTTER sliding curve optimization

The front told Tarton optimization means and measures and standards are mainly surrounded by FPS. But from the user’s physical feel, we found that Flutter also has many optimal points.

FLUTTER list slide curve and native curve

Compare the scroll curve of OFFSET / TIME, you can find that the Flutter BouncingScrollsimulation and iOS scroll curve are close, Clampingscrollsimulation and RecyClerView are close. Check the Flutter source code, it is true.

Because BouncingScrollsimulation has rebound, many pull-down refreshes and load more features are based on BOUNCINGSCROLLSIMULATION package, which causes the Flutter page sliding, physical and native Android pages inconsistent.

Flutter list performance and optimization under fast sliding

Although the Clampingscrollsimulation slides and Android RecyclerView is close, but in the quick sliding scenario, you can find that the flutter list scrolls quickly stops, and quickly slides. For the reason, you can see the moment that the sliding curve is stopped, and the speed is not a decline, and it will speed up, finally reach the end point, and stop. Based on the source code formula, the curve can be discovered that flutter clampingscrollsimulation is approximated by the Formula Fitting Method to approximate the Android RecyclerView Curve. In the case of rapid sliding, the focus of the formula curve is not 1 corresponding value, but the right image is broken, the speed will become fast.

It can be understood that the FLUTTER’s formula fit is not ideal. In the near future, there is also a PR proposed using DART to implement the RecyclerView curve.

Flutter list performance and optimization in the case of Carton

The first chapter is mentioned in the case of the same FPS, such as the FPS 55, the native list feels smooth, and the styles of the FLUTTER list are more obvious. One reason here is that the native list usually has multiple thread operations, and there is a lower probability of the big Carton; the other reason is that the same small carton’s body, FLUTTER has obvious statter, and the native list can’t feel. So why?

When we build cards, we deliberately create small Carton, compare the flutter list and RecyclerView before and after, and you can find that RecyclerView Offset does not hop, and the Flutter curve has a lot of burrs, because Flutter scrolling is based on D / T curve calculation, When a carton occurs, △ t doubles, and OFFSET also trips. It is also because of time pause and offset jump, let users know that the Flutter list is not unstoppable in small Carton.

By modifying the Y=D (T) formula, in the case of Carton, ΔT-16.6ms will ensure that the small Carton case is not hopped. In the case of Great Carton, it is not necessary to reset the ΔT to 16.6ms, because in the parking time, it has been clearly allowed to give the user to feel the carton, OFFSET does not have a trip only to make the list rolling distance short.

Performance optimization

Finally share some suggestions for performance optimization.

  1. In optimization, we should pay more attention to the user’s body, not only the performance value. The upper right map is visible, even if the FPS value is the same, but the taste occurs, the body feels clearly; the bottom of 2 game recording screens, the left side average 40 fps, the average of 30 fps, but the body feels is more smooth .

  2. Not only should I pay attention to the performance of UI Thread, but also pay attention to the overhead of Raster Thread, such as the characteristics / operation of Save Layer, but also causing Carton.

  3. In terms of tool, it is recommended to use different tools in different scenarios. It should be noted that the problem of tool detection is a stable reproduction problem or the occasion of data jitter. In addition, it is also necessary to consider the performance overhead of the tool itself, and the tool itself needs to be as low as possible.

  4. In terms of optimization ideas, we must broaden the direction. Most optimized ideas of Flutter are optimized computing tasks; and multithreading direction is not, refer to the independent ISOLATE Optimization of Flutter Dynamicx; in addition, it is difficult to digestive tasks for one frame Whether it is possible to disassemble multiple frame time, try to make a card per frame, priority to the user.

  5. Finally, I recommend paying attention to the Flutter community. The Flutter community continues to have a variety of optimization, regularly upgraded Flutter or dimensions, CHERRY-PICK optimization submission, is a good choice.

Performance analysis tool usage suggestions

Flutter tool, the first push is the official devtools tool, the Timeline and CPU Flammatic maps can help us discover problems well; in addition, Flutter also provides a wealth of Debug Flags to assist our positioning problems, familiar with each Debug switch Role, I believe that there will be no homage to our daily research and development; in addition to official tools, performance logs are also good auxiliary information, as shown in the lower right corner, the idle fish Fish-Redux component outputs the task overhead in the scroll, can It is convenient to see that at that moment.

Performance analysis tools themselves

Performance testing tools inevitably have certain overhead, but must be controlled within an acceptable range, especially on the line. A case in front sharing the FLUTTERBLOCKCANARY detection tool, discovers the framefpsRecorder.getscrolloffset time consumption, and the logic is just that Flutter is highly available to scroll offset. See the right front source code of the right picture, each frame needs to be recursively traversed to collect RenderViewPortBase, which is a small overhead. Finally, we avoid the repetition calculations during the scroll through the cache optimization.

Carton optimization suggestions

Reference official documents and excellent performance articles, precipitated a lot of routine optimization methods in the UI and GPU side, such as refreshing the minimum widget, using itemextent, recommended using Selector and Consumer, etc., avoid unnecessary DIFF computing, layout calculation, etc. Reduce SAVELAYER, replace half-transparent effects using images, alleviate the overhead of the Raster thread.

Because of the reasons, only part of the sequence, more common optimization suggestions see the official documentation.

Use the latest Flutter Engine

As mentioned earlier, the Flutter community is also active, Framework and Engine layers have an optimized PR income, which mostly can make the business layer without perception, and better optimize performance from the bottom viewing angle.

Here, there is a typical optimization scheme: existing flutter solution: When each VSYNC signal arrives, it triggers the build operation. At the end of Build, start register the next vsync callback. In the case where a carton does not occur, see Figure Normal. However, in the case of carton, see Figure Actual Results, just over 16.6ms here, because it is a registration listening to the next vsync callback, triggered the next build, for this, a large amount of time in the middle. Obviously, what we expect is, at the end, immediately execute, assuming enough to execute enough, this time the screen is still smooth.

If the team allows, it is recommended to upgrade the flutter version regularly; or maintain your own Flutter independent branch is also a good choice. From the community Cherry-Pick optimization, you can guarantee that business stability can also enjoy the community contribution. In short, I recommend you to pay attention to the community.

Summarize

In summary, the challenges, monitoring tools, optimization methods, and recommendations are shared by Flutter fluidity optimization. Performance optimization should be people-centered, develop monitoring indicators and optimization points from actual physical fitness; fluency optimization is not one, the above share is not all, there are many optimized means to pay attention: How to better multiplex Element, how to avoid Platform Thread busy leading to vsync signal lacking, etc., is a point that can be concerned. Only the continuous technical enthusiasm and conscious spirit can optimize the APP performance to the ultimate; technical teams also have access to open source communities, other teams / companies to connect, That stone stone, Can be attacked.

What are the use of face recognition technology?

In recent years, artificial intelligence has developed rapidly, especially human face recognition technology, is increasingly widely used in daily life. After entering the 21st century, China Electronic Technology has developed rapidly in just decades, and it is inseparable from the promotion of scientific and technological talents. From human beings enter the steam era, then go to the electrical age, human beings have begun to develop rapidly, and science and technology enters the era of large bombings. Technical application makes us live more fast, efficient, intelligent.

Today mainly introduces people’s face recognition technology, face recognition system has a wide range of applications: face recognition, face recognition, banned tarthen system, face recognition monitoring management, face recognition computer security, face recognition photo search , Face recognition, registration, face recognition ATM wit, video alarm system, face recognition prison intelligent alarm system, face recognition RFID intelligent customs clearance system, face recognition public security criminal pursuit of intelligent alarm system and so on. If the Alipay brush is paid, the "safe city" built by the public security is arrested in the escape criminals, brushing the face into the community, etc. is the application of face recognition technology.

Scope of application: park, factory, supermarket, community square, conference center, sports venue, school, hospital, residential area, commercial street, large-scale farm market, etc. Important parts, hotels, restaurants, catering, entertainment venues Monitoring recording purposes for indoor and outdoor surveillance of the lobby entrance, elevator and other major channels.

Face capture and tracking

Face capture refers to a frame in a frame of an image or video stream and separating portraits from the background and saves it automatically. Portrait tracking refers to the use of portrait capture techniques that automatically tracks it when the specified portrait is moving within the range of the camera.

Face recognition alignment

Face recognition is divided into two comparisons and search formulas. The verification is that the portraits of the captured or the specified portrait have been logged in the database. Remember that a certain object is determined to be the same person. Searching comparison means searching for searching for a specified portrait from all portions registered in the database.

Face modeling and search

The system can model the portable data of the library to extract the characteristics of the face and save it into the database (face feature file) to the database. When performing a face search (search formula), the specified portrait is modeled, and it will be identified compared to the templates of all people in the database, and ultimately list the most similar person according to the compared similar value. List.

The Newjin District as a pilot city representative in the "Kechuang China" artificial intelligence governance closed door experience sharing

On November 29th, hosted by the "Kechuang China" advisory committee"Kechuang China" artificial intelligence governance closed meetingHeld in the form of an online Tencent meeting. Chengdu Xinjin District is an invited meeting as a pilot city, and has experienced experience in "digital communication new cities, new industries, the practice of new life". It is also the only pilot city representative of the conference. .

This meetingArtificial intelligence governance under the new situation"" For the theme, focus on the intelligent management of the new development philosophy, the privacy protection of the sharing of major data in the artificial intelligence industry, construct the standard and norm of the government governance intelligence, invited the "Komantui China" Advisory Committee Members, artificial intelligence field experts, "Kechuang China" pilot city representative, to carry out forward-looking trend analysis, academic research discussion and practice sharing.

As the only pilot city representative of the only experience in sharing practices,Digital communication new city, new industry, new life practice exploration"As the subject, I introduced Xinjin to the key starting of the digital empowerment entity as a cross-economic transformation, driving high-quality development, with digital economy, cultivating the city innovation industry, relying on industrial function area spatial field promotion digital communication The physical industry, building a new city, developing new manufacturing, reshaping new rural villages, and accelerating the practice of promoting the economy to enter the high-quality development of fast lanes, and the experts of the participating meeting will "double development + double drive" intelligent manufacturing of Xinjin Industrial Internet "Digital Agricultural Expo + Link Urban and Rural" link Xinjin new city, new manufacturing, new villages, and innovative paths that integrate development, and discuss it.

verified! OPPO new machine will be equipped with Qualcomm New Snapdragon 8 chip

On December 1, OPPO announced at the 2021 Qualcomm Snapdragon Technology Summit that OPPO’s new flagship machine will be equipped with a new generation of Snapdragon 8 5G mobile platform and will be available in the first quarter of 2022. At the same time, including onePlus, which has previously become an OPPO sub-brand, the cooperation between OPPO big family and high-tech will enter a new stage, continue to promote 5G in the global Pu Wei development, explore and build intelligence.cell phoneThe next stage.

Zhang Xiao, vice president of OPPO Overseas Sales, said: "OPPO has been close to Qualcomm to maintain closeness, mutual trust, continues to achieve new results in the process of promoting 5G global development. OPPO flagship products have taken the lead in using flagship Snapdragon Motion Platform, in order for global users to bring excellent innovation mobile experience. OPPO flagship new products with new generation of Snapdragon 8 5G mobile platform will continue to provide users with strong power and diverse extra experience. We believe, OPPO flagship new products The annual flagship product will be again defined. "

Since the open business, the popularity and development of 5G in the world have always maintained rapidly. The latest data shows that as of the end of May, 2021, 169 operators in 70 countries and regions around the world have launched 5G commercial services [data from the Global Mobile Suppliers Association Global Mobile Supplier Association "global 5G Terminal Development Status Report "]. As the fourth largest smartphone brand in the world, OPPO continues to work with Industrial partners in Qualcomm, and work together to promote 5G from the products and applications.

In 2021, OPPO has launched a variety of mobile phones with Snapdragon 5G mobile platform, including the Find X3 series, RENO6 series, not only bringing more global users.5G mobile phoneChoose, also bringing more kinds of technological innovations for them. After the brand mission of "Technology is a good world", OPPO is more focused on scientific innovation from the perspective of 5G mobile phone products. For example, the OPPO Find X3 series is equipped with a full-link color management system that provides color visual enhancements for users with weak color identification capabilities, bringing superior and user-friendly. Screen experience.

In addition, in April 2021, OPPO was used to complete Europe’s first SA commercial manufacturer using the Snapdragon Mobile platform, and Higtong worked hands with Qualcomm to promote 5G SA network construction, and accelerated 5G commercial landing in the global market. Up to now, OPPO has become a partner with more than 80 operators around the world, and has achieved further business progress in Europe and emerging markets, including Latin America, South Africa, and in Europe, including Latin America. These achievements are inseparable from the leading technical partners represented by Qualcomm.

OPPO has always adhered to the idea of ??opening, mutual benefit, win – win, working with more industry-leading partners including Qualcomm, actively exploring more valuable cutting-edge technology and applications. OPPO and brand OnePlus faces the future, insist on the implementation of technological innovation to promote 5G evolution, ecological cooperation is the key force to play 5G scale effects, through all-round innovation and cooperation, constantly bringing quality experience and excellence product.

What is the relationship between the first batch of the first batch of millet and Qualcomm?

Zhongguancun Online Message: Lenovo Interpise Hu Xiaomi’s starting flagship chip is the second time.The first time is two years ago, Snapdragon 855, the responsible person of the Lenovo mobile phone business at that time was still the manner we are familiar with the shopkeeper.

After a year, Lenovo once again grab the first hair of the Snapdragon High-end flagship chip and did the world’s first.Where is Xiaomi?The first Qualcomm flagship chip has suddenly collapsed for many years?

In addition to the high-end flagship chip, the second flagship dragon 870 is also losing from Xiaomikou.This makes us have to doubt, is Xiaomi can’t work?The first shot becomes the first batch. It may be better twice. If it is a regular loss, there is really a problem.

Workplace white-collar workers, after entering the field of technology …

Last year, the Australian government launched a global talent program project, which is GTI, I would like to be unfamiliar, this is an immigrant project. One of this is very eye-catching, that is –fintech.

In the entire Git project,FINTECH is the only direction related to the business sectorAnd, Australia’s demand for talents in this direction is very strong. So,What is FINTECH, why is this talent in this area?

01

Who master Fintech, who can enter a famous enterprise

FINTECH is the abbreviation of financial technology, it is popularUse various types of technological means to innovate reform traditional financial industryProducts, thereby increasing efficiency, reducing operating costs. For example, everyone usually used WeChat payment, Alipay is one of financial technology.

With the rise of artificial intelligence, more and more financial companies have gradually transformed into financial science and technology.Among the top five Internet financial institutions in the world, there are four Chinese companies.That is to say, whoever masters Fintech, who can enter the famous enterprises.

In the "Fintech Development Plan" issued by the People’s Bank of China, the highest planning of future financial science and technology work. And in the "Certified Public Accountant" known as the financial industryCFA, the topic of the Fintech theme, There is no shortage of manual intelligence, machine learning, big data, automated transactions …

02

FINTECH industry salary high, positions

FINTECH is currently used in a variety of industries, borrowings, wealth management, payment services, insurance, credit, housing intermediaries, etc. Because it can replace many traditional financial results,Use intelligence to replace human and material resources, intelligent will be a future trend.

Fintech industry salary is also very high, options, stocks are also available, and you can also get new things and new challenges every day.

Tell you someCurrently popular FINTECH positionsThe block chain is one of the fastest growing skills of financial skills. Therefore, the demand for block chain developers is very large. Other is financial analysts, network security analysts, quantitative analysts, compliance experts, business development managers, etc.

03

Financial background + technology skills two steps

Speaking here,Do you interested in the Fintech industry? So, what skills do you need to enter this industry?First of all, it is definitely a financial background, followed by technology skills. Therefore, entering this industry requires rich financial knowledge, it also requires technical capabilities, such as Java, Python, C ++, etc.

forStudents with computer or financial industry bases, it is very advantageous to enter the Fintech industryIn the advanced, there are these cross-skills, you will learn very quickly. And in China, ant prostitutes, Jingdong finance, etc.

Of course, if you are not a lot of background, it doesn’t matter, you recommend a course for you.Dr. Tsinghua University computerChen Wei explained for everyone"FINTECH Data Analysis and Risk Prediction of Job Search"It will make a case-scented scenic examination for Fintech, and use a communical case such as a loan default, let you seize the essence of Fintech. Now only need0.99Yuan, you can learn from class, quickly sign up, to enter the Fintech industry.

Entering the field of financial science and technology

Cast "Ren Decoir" of the skills interoperability

More than the number of people is more, please wait patiently

04 FINTECH courses five advantages

Advantage 1: Case Site Jinghua Teaching

This course will be targetedFINTECH application scenario case analysis pattern teachingLet you know the Fintech, and know the company’s necessary technology, the company’s must-have technology required in the job search,There are some common machine learning surface test questionsLet you take a while when you interview, calmly face.

Teacher also introduced some of the more interesting Fintech projects to let you form a certain precipitate at the application level.

Advantage 1: Ph.D. in Computer, Tsinghua University

This course is taught by artificial intelligence experts, Dr. Tsinghua Computer, Chen Yu, who is Alibaba Cloud MVP, Tencent Cloud TVP. Multi-year artificial intelligence, data analysis, financial science and technology receive teaching experience, can learn from the students to learn from the students.

He is also a member of the IEEE ACM Member China Artificial Intelligence Association. He has won 2 NOI Competition first prize at the CCF Database Committee, 2 ACM Competition Asian Copper Awards, "Data Analysis" "SQL must know" column author, More than 100,000 fans published multiple SCLs in the artificial intelligence.

Advantage 3: Code practical drive teaching

The course is written in real baseline code, the teacher will take your hand with your hand, Baseline baseline tuning, etc.

The three-day course is gradually entered, just to help you enter the Fintech industry.

Advantage 4: Temcripping + Class Supervision Teaching

In addition to the leading teacher, this training camp.It is also equipped with professional assistant teachers, you have problems encountered in courses or doing homework.You can ask questions in the WeChat group, and the assistant will help you solve it in time.

Every day, you will remind you to go to class, urge you to learn, don’t worry about yourself because inertia doesn’t want to be class.

Advantage 5: Course Outlet Background Rely

This course is provided by the course, starting a class is a online vocational education unicorn company,In 2013, it was officially launched, and the accumulated paid students more than 5 million.For college students and in-service staff, provide diversified curriculum systems and talent services such as professional ability advanced, vocational qualification examinations, and help students achieve sustainable occupational growth.

In the 2020 CCTV Network Education Festival hosted by CCTV,Start a class, win 2020 reputation influence vocational education brands. If you want the workplace, you should first polish your eyes, choose the lead in the industry, and you can’t miss it.

Entering the Fintech industry requires strong knowledge, here is in class, also prepared for everyoneLearning materialsSpree, let you broaden your knowledge.

The information includes: 4 this AI good book and 8 artificial intelligence knowledge maps.

"Artificial Intelligence A Modern Approach Artificial Intelligence – A Modern Method": Artificial intelligence, Mit, Stanford, Harvard, etc. The artificial intelligent textbooks of many famous schools are preferred to expect to become a true artificial intelligence professionals and classmates who accept system training.

"Deep learning: Deep Learnin": From basic statistical and calculus, help master the most advanced depth learning technology. Suitable for classmates who use and want to learn how modern deep learning systems, principles, and methods.

"Handsmanship Machine Learning: HANDS-ON MACHINE Learning": Pure code driver, from theory to the best way to practice, from understanding theory to solve problems. Suitable for students who wish to solve artificial intelligence issues.

"Smooth Python: Fluent Python": Suitable for mastering basic Python programming capabilities, hoping to master more good programming capabilities, becoming a real programming "professional player" classmates.

Entering the field of financial science and technology

Data: Win11 market share is close to 10% Microsoft is still expanding the upgrade

According to the Survey data in November, Windows 11 is gradually approaching to achieving two-digit market share. The company is based on the latest data of 60,000 Windows 10 and Windows 11 computers. There are currently 8.6% of the computer running Windows 11, 3.8% higher than last month.

Windows 10 version 21H2, this latest version of the operating system starts to be launched on PCs that are not qualified to use Windows 11, this version also appears in the view of Adduplex this month. By the end of November, its market share is 3.7%, and is currently in Windows 1022 (11%), Windows 10 20H2 (31.8%) and Windows 10 21H1 (36.8%).

Microsoft has repeatedly expressed that it will accelerate Windows 11, which in facts also show their attitude, Win10 is already in the past, and Windows 11 is their focus.

"Based on the active promotion update experience and user feedback we have seen so far, we advance the promotion of the promotion than our previous expectations, and now make Windows 11 upgrades more widely provided to eligible Windows 10 devices," Microsoft WINDOWS service and delivery executive John Kelps said.

It is worth mentioning that Microsoft has indeed expanded the WINDOWS 11 push, as long as your device meets the standard, you can upgrade free.